do an p2p sip_dinh thi phuong

87
HC VIN CÔNG NGHBƢU CHÍNH VIỄN THÔNG CNG HÒA XÃ HI CHNGHĨA VIỆT NAM KHOA VIN THÔNG I ĐỘC LP TDO HNH PHÚC ------o0o------- -------o0o----- : Đinh Thị Phƣơng : D05VT1 : 2005-2010 - : MÔ HÌNH PEER-TO-PEER SIP : SIP và PEER TO PEER Mô hình PEER TO PEER SIP ng dng ca PEER TO PEER SIP : …./ .…/ …. : .…/ .…/ …. Ngày……Tháng……..Năm…….. Giáo viên hƣớng dn TS. Lê Nhật Thăng

Upload: bkavlnn

Post on 24-Jun-2015

704 views

Category:

Documents


8 download

TRANSCRIPT

Page 1: Do an p2p Sip_dinh Thi Phuong

HỌC VIỆN CÔNG NGHỆ BƢU CHÍNH VIỄN THÔNG CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

KHOA VIỄN THÔNG I ĐỘC LẬP – TỰ DO – HẠNH PHÚC

------o0o------- -------o0o-----

: Đinh Thị Phƣơng

: D05VT1

: 2005-2010

-

:

MÔ HÌNH PEER-TO-PEER SIP

:

SIP và PEER TO PEER

Mô hình PEER TO PEER SIP

Ứng dụng của PEER TO PEER SIP

: …./ .…/ ….

: .…/ .…/ ….

Ngày……Tháng……..Năm……..

Giáo viên hƣớng dẫn

TS. Lê Nhật Thăng

Page 2: Do an p2p Sip_dinh Thi Phuong

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

: : …………….)

Ngày…. Tháng…. Năm…

Giáo viên hƣớng dẫn

TS. Lê Nhật Thăng

Page 3: Do an p2p Sip_dinh Thi Phuong

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

…………………………………………………………………………………………

: : ………)

Ngày…. Tháng…. Năm……

Giáo viên phản biện

Page 4: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Mục lục

Đinh Thị Phương, D05VT1 Page i

MỤC LỤC

MỤC LỤC .................................................................................................................... i

DANH MỤC HÌNH VẼ.............................................................................................. vi

DANH MỤC BẢNG BIỂU ...................................................................................... viii

THUẬT NGỮ VIẾT TẮT ......................................................................................... vii

LỜI NÓI ĐẦU ............................................................................................................. 1

CHƢƠNG 1: TỔNG QUAN VỀ SIP VÀ PEER-TO-PEER ......................................... 3

1.1 GIAO THỨC KHỞI ĐẦU PHIÊN SIP .......................................................... 3

1.1.1 Giới thiệu về SIP ................................................................................ 3

1.1.2 Kiến trúc SIP ...................................................................................... 8

1.1.3 Thiết lập cuộc gọi sử dụng giao thức SIP ........................................... 9

1.2 LÝ THUYẾT VỀ MẠNG NGANG HÀNG P2P ......................................... 13

1.2.1 Giới thiệu về mạng P2P .................................................................... 13

1.2.2 Phân loại các mạng P2P ................................................................... 17

1.2.2.1 Phân loại theo mức độ phân quyền ........................................ 17

1.2.2.2 Phân loại theo cơ chế tìm kiếm ............................................. 23

1.2.2.3 Phân loại theo cấu trúc .......................................................... 26

1.2.3 Bảng hàm băm phân tán (DHTs) ...................................................... 27

1.2.3.1 Khái niệm DHT .................................................................... 27

1.2.3.2 Giao thức Chord ................................................................... 29

1.3 KẾT LUẬN CHƢƠNG I ............................................................................. 30

CHƢƠNG 2: PEER-TO-PEER SIP ........................................................................... 31

2.1 GIỚI THIỆU ............................................................................................... 31

2.1.1 Giới thiệu P2P SIP ........................................................................... 31

2.1.2 Một số khái niệm trong mạng P2P SIP ............................................. 32

2.1.3 Mô hình tham khảo P2P SIP ............................................................. 35

Page 5: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Mục lục

Đinh Thị Phương, D05VT1 Page ii

2.1.4 So sánh mô hình CS SIP và P2P SIP ................................................ 36

2.2 TÍCH HỢP CÔNG NGHỆ P2P VÀO SIP ................................................... 39

2.2.1 Sự mở rộng chuẩn SIP ...................................................................... 39

2.2.2 Việc mở rộng dịch vụ định vị SIP..................................................... 42

2.3 KIẾN TRÚC MẠNG P2P SIP PHÁT TRIỂN SỚM ................................... 43

2.3.1 Kiến trúc SOSIMPLE P2P SIP ......................................................... 43

2.3.1.1 Cấu trúc và các bản tin .......................................................... 43

2.3.1.2 Hoạt động của Node (Node-level Operations) ....................... 44

2.3.1.3 Hoạt động của ngƣời sử dụng (User Operations) ................... 45

2.3.2 Kiến trúc P2P cho hệ thống điện thoại IP dựa trên SIP ..................... 47

2.3.2.1 Kiến trúc ............................................................................... 47

2.3.2.2 Các đề xuất trong kiến trúc P2P-SIP ..................................... 50

2.3.2.3 Kiến trúc mạng chồng P2P SIP ............................................. 53

2.4 KẾT LUẬN CHƢƠNG 2 ............................................................................ 59

CHƢƠNG 3: ỨNG DỤNG CỦA P2P SIP ................................................................. 60

3.1 CÁC LĨNH VỰC SỬ DỤNG P2P SIP......................................................... 60

3.1.1 Môi trƣờng Internet toàn cầu ............................................................ 60

3.1.1.1 Nhà cung cấp dịch vụ VoIP P2P công cộng .......................... 60

3.1.1.2 Mạng VoIP P2P toàn cầu mở ................................................ 60

3.1.1.3 Hiện diện trực tuyến sử dụng các thiết bị điện tử tiêu dùng đa

phƣơng tiện ...................................................................................... 61

3.1.2 Môi trƣờng yêu cầu an ninh .............................................................. 61

3.1.3 Môi trƣờng bị giới hạn kết nối Internet hoặc cơ sở hạ tầng ............... 62

3.1.4 Môi trƣờng riêng tƣ có sự quản lý .................................................... 62

3.2 MỘT SỐ ỨNG DỤNG CỤ THỂ CỦA P2P SIP .......................................... 63

3.3 KHẢ NĂNG LÀM VIỆC GIỮA P2P SIP VÀ IMS ..................................... 67

3.3.1 Giới thiệu về IMS ............................................................................. 67

3.3.2 Sự khác nhau về ứng dụng và dịch vụ giữa P2P-SIP và IMS ........... 68

Page 6: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Mục lục

Đinh Thị Phương, D05VT1 Page iii

3.3.3 Kiến trúc liên kết giữa P2P-SIP và IMS ........................................... 69

3.4 KẾT LUẬN CHƢƠNG 3 ............................................................................ 72

KẾT LUẬN ............................................................................................................... 73

TÀI LIỆU THAM KHẢO.......................................................................................... 75

Page 7: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Danh mục bảng biểu

Đinh Thị Phương, D05VT1 Page vi

DANH MỤC HÌNH VẼ

Hình 1-1: SIP trong mô hình OSI ................................................................................. 4

Hình 1-2: Quá trình đăng ký địa chỉ ............................................................................. 5

Hình 1-3: Phân giải địa chỉ .......................................................................................... 6

Hình 1-4: Các thành phần trong hệ thống SIP .............................................................. 8

Hình 1-5: Khởi tạo phiên SIP – Phƣơng thức P2P ...................................................... 10

Hình 1-6: Thiết lập cuộc gọi trực tiếp thông qua SIP gateway .................................... 10

Hình 1-7: Thiết lập cuộc gọi sử dụng Proxy Server .................................................... 11

Hình 1-8: Thiết lập cuộc gọi sử dụng Redirect Server. ............................................... 12

Hình 1-9: Phân loại hệ thống máy tính ....................................................................... 14

Hình 1-10: Mô hình Client-Server ............................................................................. 15

Hình 1-11: Mạng ngang hàng .................................................................................... 16

Hình 1-12: Mạng ngang hàng thuần nhất ................................................................... 18

Hình 1-13: Nguyên lý hoạt động của Gnutella ........................................................... 19

Hình 1-14: Mạng lai ghép với chỉ mục tập trung ........................................................ 20

Hình 1-15: Nguyên lý hoạt động của Napster............................................................. 21

Hình 1-16: Mạng lai ghép với chỉ mục phân tán......................................................... 22

Hình 1-17: Nguyên lý hoạt động của JXTA ............................................................... 23

Hình 1-18: Cơ chế danh mục tập trung....................................................................... 24

Hình 1-19: Cơ chế yêu cầu liên tục ............................................................................ 25

Hình 1-20: Cơ chế bảng hàm băm phân tán................................................................ 25

Hình 1-21: Chức năng chính của DHT ....................................................................... 29

Hình 1-22: Cơ chế làm việc của DHT ........................................................................ 29

Hình 1-23: Chord ring................................................................................................ 30

Hình 2-1 : Mạng phủ .................................................................................................. 32

Hình 2-2: Mô hình tham khảo P2PSIP ....................................................................... 36

Page 8: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Danh mục bảng biểu

Đinh Thị Phương, D05VT1 Page vii

Hình 2-3 : Khám phá và định tuyến cuộc gọi trong .................................................... 37

Hình 2-4 : Mô hình SIP truyền thống ......................................................................... 37

Hình 2-5: Mô hình P2PSIP ........................................................................................ 38

Hình 2-6: Cơ chế định tuyến của dSIP ....................................................................... 41

Hình 2-7: Lƣu lƣợng bản tin của quá trình thiết lập phiên P2P SIP với dịch vụ định vị

mở rộng. .................................................................................................................... 43

Hình 2-8: Ví dụ một node mới tham ra SOSIMPLE ................................................... 45

Hình 2-9: Alice xác định vị trí ngƣời sử dụng Bob và thiết lập một phiên truyền thông.

.................................................................................................................................. 46

Hình 2-10 Kiến trúc P2P cho hệ thống điện thoại IP dựa trên SIP .............................. 48

Hình 2-11: Sơ đồ khối của một node P2P-SIP ............................................................ 48

Hình 2-12: Ví dụ về hệ thống lai ................................................................................ 50

Hình 2-13: Khái niệm SIP using P2P ......................................................................... 51

Hình 2-14: Cấu trúc hệ thống SIP using P2P .............................................................. 51

Hình 2-15: Khái niệm P2P over SIP ........................................................................... 52

Hình 2-16: Sơ đồ khối một node P2PSIP ................................................................... 53

Hình 2-17: Quá trình một node gia nhập mạng .......................................................... 54

Hình 2-18: Quá trình một node rời mạng ................................................................... 55

Hình 2-19: Siêu node trong DHT gặp sự cố .............................................................. 56

Hình 2-20: Thiết lập cuộc gọi trong mạng chồng P2P-SIP ......................................... 57

Hình 2-21: Định vị trí của NSD nhờ tìm kiếm dựa trên SIP và P2P .......................... 58

Hình 3-1: Một số ứng dụng trong mạng P2P .............................................................. 64

Hình 3-2: Lƣu trữ bản tin offline ................................................................................ 65

Hình 3-3: Kiến trúc liên kết P2P SIP và IMS ............................................................. 69

Hình 3-4: Khả năng làm việc giữa các máy trạm P2P-SIP và IMS ............................. 70

Hình 3-5: Thiết lập phiên từ P2P SIP tới IMS ............................................................ 70

Hình 3-6: Thiết lập phiên từ IMS tới P2P SIP ............................................................ 71

Hình 3-7: Liên kết làm việc giữa P2P SIP và IMS ..................................................... 71

Page 9: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Danh mục bảng biểu

Đinh Thị Phương, D05VT1 Page viii

DANH MỤC BẢNG BIỂU

Bảng 1-1: Đáp ứng SIP ................................................................................................ 7

Bảng 3-1: So sánh các dịch vụ đƣợc cung cấp bởi mạng IMS và mạng chồng P2P-SIP

.................................................................................................................................. 68

Page 10: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Thuật ngữ viết tắt

Đinh Thị Phương, D05VT1 Page vii

THUẬT NGỮ VIẾT TẮT

Từ viết tắt Tiếng Anh Tiếng Việt

AAA Authentication,

Authorization, Accounting

Nhận thực, trao quyền và

tính cƣớc

API Application Programming

Interface

Giao diện lập trình ứng

dụng

DHT Distributed Hash Table Bảng hàm băm phân tán

DNS SRV DNS Service Record Bản ghi dịch vụ DNS

dSIP distributed Session

Initiation Protocol

Giao thức khởi tạo phiên

phân tán

ENUM Telephone number

mapping

Ánh xạ số điện thoại

FTP File Transfer Protocol Giao thức truyền tệp tin

GUID Globally Unique Identifier Nhận dạng duy nhất toàn

cầu

HTTP Hypertext Transfer

Protocol

Giao thức truyền tải siêu

văn bản

ICE Interative Connectivity

Establishment

Thiết lập kết nối tƣơng tác

I-CSCF Interrogating-Call Session

Control Function

Truy vấn - Chức năng điều

khiển phiên gọi

Page 11: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Thuật ngữ viết tắt

Đinh Thị Phương, D05VT1 Page viii

ID Identifier Nhận dạng

IM Instant Messeaging Tin nhắn tức thì

IMS IP Multimedia Subsystem Hệ thống con đa phƣơng

tiện

JXTA Juxtapose Giao thức P2P mã nguồn

mở của Sun Microsystems

LDAP Lightweight Directory

Access Protocol

Giao thức truy nhập thƣ

mục

P2P Peer-to-Peer Hệ thống ngang hang

P2P-LOC P2P Location Service Dịch vụ định vị P2P

P-CSCF Proxy-Call Session Control

Protocol

Ủy quyền-Giao thức điều

khiển phiên gọi

RTP Real-time Transport

Protocol

Giao thức truyền tải thời

gian thực

RTCP Real-time Transport

Control Protocol

Giao thức điều khiển

truyền tải

RSVP Resource reservation

Protocol

Giao thức dự trữ tài

nguyên

S-CSCF Serving-Call Session

Control Protocol

Phục vụ - Giao thức điều

khiển phiên gọi

SDP Session Description

Protocol

Giao thức mô tả phiên

SIP Session Initiation Protocol Giao thức khởi đầu phiên

Page 12: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Thuật ngữ viết tắt

Đinh Thị Phương, D05VT1 Page ix

SMTP Simple mail transfer

protocol

Giao thức truyền tải thƣ

đơn giản

SIMPLE Session initiation protocol

for instant messaging and

presence leveraging

extensions

SIP cho sự mở rộng liên

quan tới tin nhắn tức thời

và hiện diện trực tuyến

SOSIMPLE Self Organizing SIMPLE SIMPLE tự tổ chức

STUN Simple traversal of UDP

through NAT

Chuyển dịch đơn giản của

UDP thông qua NAT

SHA Secure Hash Algorithm Thuật toán băm bảo mật

UA User Agent Tác nhân ngƣời sử dụng

URI Uniform Resource Identifer Nhận dạng tài nguyên

chung

URL Uniform Resource Locator Bộ định vị tài nguyên

chung

TURN Traversal Using Relay

NAT

Chuyển dịch sử dụng NAT

chuyển tiếp

Page 13: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Lời nói đầu

Đinh Thị Phương, D05VT1 Page 1

LỜI NÓI ĐẦU

Các hệ thống truyền thông đa phƣơng tiện dựa trên nền IP đƣợc sử dụng cho

truyền thông video, thoại, tin nhắn, game trực tuyến, đang trở nên phổ biến đối với mọi

cá nhân, tổ chức. Thậm chí chúng đóng một vai trò ngày càng quan trọng trong cuộc

sống hàng ngày của con ngƣời. Hiện tại, phần lớn các hệ thống VoIP đều dựa trên giao

thức SIP đã đƣợc chuẩn hóa bởi IETF. Bởi vậy SIP ngày càng trở nên phổ biến và đã

trở thành một giao thức báo hiệu chính trong mạng NGN.

Tuy nhiên, khi mà Internet phát triển với tốc độ chóng mặt nhƣ ngày nay, các hệ

thống đa phƣơng tiện VoIP dựa trên SIP hiện tại đƣợc xây dựng dựa trên mô hình

Client-Server, do dó không tránh khỏi vấn đề nhƣ khi số Client tăng lên đến một mức

độ nào đó thì nhu cầu về tải và băng thông tăng lên dẫn đến việc máy chủ Server

không có khả năng cung cấp dịch vụ cho các máy khách thêm vào hay khi các máy chủ

xảy ra sự cố, hệ thống không thể làm việc đƣợc.

Để giải quyết vấn đề trên và còn nhiều vấn đề khác nữa của mô hình

Client/Server, các hệ thống P2P đƣợc tin tƣởng sẽ là lời giải cho các vấn đề trên. Hệ

thống P2P không có các máy chủ trung tâm và là mạng tự tổ chức. Kết hợp tính phân

tán của P2P với giao thức SIP tiêu chuẩn, P2P-SIP đã đƣợc đề xuất trong một số

nghiên cứu gần đây. Ý tƣởng chính của P2P-SIP là sử dụng P2P để cho phép tìm ra tài

nguyên phân tán trong một mạng SIP, loại bỏ nhu cầu về các máy chủ trung tâm.

Ngoài ra, các hệ thống P2P-SIP còn có khả năng mở rộng và linh hoạt hơn so với các

hệ thống SIP tập trung hiện tại do tính phân tán của P2P.

Vì vậy em chọn đề tài nghiên cứu trong đồ án của em tốt nghiệp Đại học là: “Mô hình

PEER-TO-PEER SIP ”.

Nội dung đồ án bao gồm 3 phần chính sau:

Chƣơng 1: Tổng quan về SIP và P2P

Chƣơng 2: PEER-TO-PEER SIP

Chƣơng 3: Ứng dụng của P2P SIP

Page 14: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Lời nói đầu

Đinh Thị Phương, D05VT1 Page 2

Do thời gian và trình độ của em có hạn, nên chắc chắn đồ án không tránh khỏi

rất nhiều thiếu sót. Em rất mong nhận đƣợc sự chỉ dẫn và góp ý tận tình của các thầy

cô giáo và các bạn.

Trong quá trình học tập tại Học viện công nghệ Bƣu Chính Viễn Thông và thực

hiện đồ án, em xin chân thành cám ơn các thầy cô giáo đã giảng dạy và giúp đỡ em

hoàn thành tốt chƣơng trình học.

Đặc biệt em xin chân thành cảm ơn thầy giáo Ts. Lê Nhật Thăng đã trực tiếp

hƣớng dẫn em hoàn thành đồ án tốt nghiệp này.

Hà nội, ngày……tháng……năm 2010

Sinh viên

Đinh Thị Phƣơng

Page 15: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 3

CHƢƠNG 1: TỔNG QUAN VỀ SIP VÀ PEER-TO-PEER

1.1 GIAO THỨC KHỞI ĐẦU PHIÊN SIP

1.1.1 Giới thiệu về SIP

Giao thức khởi đầu phiên SIP (Session Initiation Protocol) là giao thức điều

khiển báo hiệu thuộc lớp ứng dụng đƣợc sử dụng để thiết lập, duy trì và kết thúc các

phiên truyền thông đa phƣơng tiện hay các cuộc gọi qua nền IP. SIP đƣợc sử dụng để

thiết lập điều khiển và xóa bỏ cuộc gọi.

SIP đƣợc chọn nhƣ là một giao thức điều khiển cuộc gọi đa phƣơng tiện dựa

trên nền IP cho các mạng không dây 3G, đƣợc gọi là phân hệ đa phƣơng tiện IP (IMS-

IP Multimedia Subsystem) của 3GPP. Điều này tạo cho nó một cơ sở tiêu chuẩn chung

cho việc quản lý các phiên, trao đổi bối cảnh, và tin nhắn tức thời (IM) trong các mạng

di động thế hệ mới.

Cấu trúc SIP tƣơng tự nhƣ cấu trúc HTTP (giao thức Client-Server) bao gồm

tập hợp các yêu cầu đƣợc gửi từ SIP client tới SIP Server. Server xử lý các yêu cầu này

và trả lời client, một bản tin trả lời cùng với các bản tin liên kết với nó gọi là một giao

dịch SIP (SIP transaction).

SIP cũng có thể kết hợp với các giao thức báo hiệu và thiết lập cuộc gọi khác.

Ví dụ, SIP có thể dùng để chỉ ra rằng ngƣời tham gia có thể thông qua H.323, cổng

H.245, địa chỉ ngƣời dùng rồi dùng H.245 để thiết lập cuộc gọi.

SIP hỗ trợ 5 chức năng trong việc thiết lập và kết thúc các phiên truyền thông:

- Định vị ngƣời dùng: xác định vị trí của ngƣời dùng tiến hành hội thoại.

- Năng lực ngƣời dùng: xác định các phƣơng thức và các tham số tƣơng ứng

trong hội thoại.

- Xác định những ngƣời sẵn sàng tham gia hội thoại.

- Thiết lập các tham số cần thiết cho cuộc gọi.

- Điều khiển cuộc gọi: bao gồm cả quá trình truyền và kết thúc cuộc gọi.

SIP là một giao thức thuộc lớp ứng dụng (Application) trong mô hình TCP/IP.

Còn nếu nói đến mô hình OSI 7 lớp thì SIP là một giao thức nằm ở cả 3 lớp trên cùng

tức là lớp ứng dụng/lớp trình diễn/lớp phiên.

Page 16: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 4

IEEE 802.2 / 802.3 / 802.11/ MPLS/ ...

IP

Audio: G.711, G.722,

G.723.1 , G.728, G.729,

MPEG,…

Video: H.261, H.263,

MPEG,...

SIP

( Session Initiation

Protocol)

TELNET

FTP

SMTP

HTTP

R

S

V

P

RTP/ RTCP

TCP UDP

LAN IEEE 802.3 / 802.11/ SDH/ DWDM/ ...

Hình 1-1: SIP trong mô hình OSI

SIP là một giao thức điều khiển tại lớp ứng dụng để tạo ra, sửa chữa và kết thúc

các phiên giữa hai hay nhiều ngƣời tham ra. Giao thức SIP ban đầu là một giao thức

P2P, nhƣng trong thực tế nó sử dụng nhiều loại máy chủ, tạo nên phiên truyền thông

dựa trên mô hình client-server trong hầu hết các trƣờng hợp. Giao thức SIP cơ bản hỗ

trợ các đặc điểm cơ bản sau: đăng ký, khởi tạo phiên, thay đổi, kết thúc, định hƣớng

cuộc gọi. Theo truyền thống, các SIP client sử dụng cổng TCP và UDP 5060 để kết nối

tới SIP server và các thiết bị đầu cuối SIP khác. Sau khi giao thức cơ bản thực hiện mở

rộng, SIP đƣợc mở rộng với nhiều đặc tính mới, nhƣ instant messaging, presence,

conferencing, và các dịch vụ khẩn cấp (emergency services).

SIP Address

Ngƣời sử dụng SIP đƣợc xác định bởi SIP Uniform Resource Identifier (URI),

nó đƣợc hiểu nhƣ một địa chỉ e-mail. Định dạng phổ biến của SIP URI là:

Sip:user:password@host:port;parameters?headers.

Có thể thấy, SIP URI giống với HTTP‟s URL. Lý do cho sự giống nhau này là

giao thức SIP dựa trên cũng dựa trên các nguyên tắc request-respone giống nhƣ giao

thức HTTP. SIP URI theo định dạng URI đƣợc chỉ ra trong IETF‟s RFC 2396. Định

dạng phổ biến của SIP URI có các phần chính sau:

Page 17: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 5

User : một nhận dạng có thể chọn lựa một cách tự do nhƣ tên ngƣời dùng username

hoặc host. Tùy chọn, tên ngƣời dùng có thể đƣợc nối với một mật khẩu nều cần.

Host : định rõ các tài nguyên SIP mà host cung cấp, bao gồm tên miền đầy đủ hoặc địa

chỉ IPv4 hoặc địa chỉ IPv6 dạng số.

Port : chỉ ra số cổng trên host, nơi mà các bản tin SIP đƣợc gửi. Đây là trƣờng tùy

chọn, và mặc định cổng 5060 đƣợc sử dụng nếu không cổng nào đƣợc chỉ rõ.

Parameter : là danh sách các tham số bổ sung, bao gồm các cặp “name=value”, cách

nhau bằng các dấu chấm phẩy. Các tham số đƣợc sử dụng trong chỉ một số tùy chọn

them. SIP UA bỏ qua các tham số nó không hiểu.

Headers : cung cấp một danh sách các tiêu đề, bao gồm các cặp “name=value”, đƣợc

cách nhau bằng các dấu chấm phẩy.

Đăng ký địa chỉ (Address Registration)

Hình 1-2: Quá trình đăng ký địa chỉ

Địa chỉ SIP nhận đƣợc theo nhiều cách:

Bằng tƣơng tác với user

Bằng thông tin bộ nhớ đệm từ phiên trao đổi trƣớc đó

Bằng tƣơng tác với network server

Page 18: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 6

Giải quyết địa chỉ (Address Resolution)

Hình 1-3: Phân giải địa chỉ

Để phân giải một địa chỉ, các UA sử dụng một loạt các cơ chế nội bộ nhƣ một

bảng local host, DNS lookup, giao thức Finger, rwhois, hay LDAP, hoặc nó để lại khả

năng đáp ứng tới network server.Trong hình, các proxy server SIP tƣơng tác với

location server để lấy đƣợc vị trí của các thiết bị cuối.

Các bản tin SIP

Một bản tin SIP bao gồm phần tiêu đề bản tin và phần chính bản tinb có trƣờng

tùy chọn. Phần tiêu đề bản tin bao gồm các dòng request/status và một hoặc nhiều

trƣờng tiêu đề. Dòng request/status xác định loại bản tin. Các trƣờng tiêu đề cung cấp

các thông tin bổ sung cần thiết bởi các client và server để có thể xử lý bản tin. Phần

chính có thể mang các thông tin bổ sung, nhƣ thông tin chi tiết về thời gian thực sự

giao thức đƣợc sử dụng trong phiên và các host đang tham ra.

Giao thức SIP cơ bản định nghĩa 6 yêu cầu: INVITE, ACK, BYE, CANCEL,

OPTIONS, REGISTER và một số bản tin khác nhƣ INFO, COMET, PRACK,

SUBSCRIBE, NOTIFY, REFER.

6 loại đáp ứng: 1xx, 2xx, 3xx, 5xx, 6xx

Có nhiều đáp ứng với mỗi loại để chỉ ra các yêu cầu thành công hay thất bại, và trong

trƣờng hợp thứ 2 thì tại sao nó lại thất bại.

Các SIP request và mục đích của chúng đƣợc liệt kê dƣới đây và các đáp ứng

đến chúng đƣợc liệt kê trong bảng 1-1.

INVITE : khởi tạo cuộc gọi.

Page 19: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 7

ACK : xác nhận cho yêu cầu INVITE

BYE : dùng để kết thúc hoặc di chuyển một phiên

CANCEL : hủy bỏ yêu cầu chờ giải quyết, đổ chuông, nhƣng không chấm

dứt các phiên đang xảy ra.

OPTIONS : truy vấn các khả năng của các node ở xa.

REGISTER : đƣợc sử dụng bởi một client để đăng ký một địa chỉ với một

SIP server.

Bảng 1-1: Đáp ứng SIP

Loại đáp ứng Đáp ứng

Informational (1xx) 100 Trying, 180 Ringing, 181 Call Forwarded,

182 Queued, 183 Session Progress.

Successful (2xx) 200 Ok

Redirection (3xx) 300 Multiple Choice, 301 Moved Permanently,

302 Moved Temporarily, 305 Use Proxy,

380 Alternative Service

Client Failure (4xx) 400 Bad Request, 401 Unauthorized (registrars),

402 Payment Required, 403 Forbidden, 404 Not

Found,

405 Method Not Allowed, 406 Not Acceptable,

415 Unsupported Media Type, 420 Bad Extension,

486 Busy Here

Server Failure (5xx) 500 Server Internal Error, 501 Not Implemented, 502

Bad Gateway, 503 Service Unavailable,

504 Server Time-out, 505 Version Not Supported

Global Failure (6xx) 600 Busy Everywhere, 603 Decline,

604 es Not Exist Anywhere, 606 Not Acceptable.

Page 20: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 8

1.1.2 Kiến trúc SIP

Phần này miêu tả các chức năng cơ bản và các phần tử chính của SIP. Hệ thống

SIP có hai thành phần: các thực thể ngƣời sử dụng (user agent) và các server mạng.

Bên gọi và bên nhận đƣợc nhận dạng qua các địa chỉ SIP; các bên cần định vị ra server

và ngƣời sử dụng.

User

Agent

Location

Server

Redirect

Server

Registrar

Server

Proxy

Server

Proxy

Server

SIP components

Gateway

PSTN

Hình 1-4: Các thành phần trong hệ thống SIP

Hệ thống SIP bao gồm các thành phần (thực thể) như trên hình 1-4.

User Agent (UA): đóng vai trò của thiết bị đầu cuối trong báo hiệu SIP. UA bao gồm

hai loại User Agent Client (UAC) và User Agent Server (UAS). UAC gửi các request

và nhận các respone, ngƣợc lại thì UAS nhận các request và gửi các respone.

Redirect Server: tiếp nhận yêu cầu từ UA, kiểm tra tên username của địa chỉ cần gọi,

tìm địa chỉ tƣơng ứng với username ấy thông qua location server, rồi gửi địa chỉ đó

ngƣợc về lại UA để UA thực hiện cuộc gọi.

Location Server: Nó cũng giống nhƣ chức năng của một DNS server: chứa thông tin vị

trí/địa chỉ của các UA trên mạng SIP. Đầu tiên thì UA báo vị trí của nó về registrar

server (thƣờng đƣợc tích hợp vào proxy server hay redirect server), tiếp theo thì

registrar server sẽ lƣu thông tin này trên location server.

Page 21: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 9

Proxy Server: tiếp nhận các yêu cầu, quyết định nơi gửi đến và chuyển chúng sang

server kế tiếp (sử dụng nguyên tắc định tuyến next hop). Có hai loại Proxy Server:

trạng thái đầy đủ (statefull) và trạng thái không đầy đủ (stateless). Statefull Proxy

Server lƣu trữ trạng thái của SIP transaction hiện tại, cho phép Proxy Server phân

nhánh các yêu cầu và truyền lại các bản tin nếu nhƣ lỗi xảy ra. Stateless Proxy Server

không giữ bất kỳ các trạng thái nào liên quan tới các bản tin SIP, và vì vậy chỉ đơn

giản là chuyển tiếp các bản tin SIP. Ƣu điểm chính của Stateless Proxy Server so với

Statefull Proxy Server đó là hiệu năng của nó.

Registrar server: Là các thực thể SIP server, nó nhận các đăng ký từ các UA, rút ra

thông tin về vị trí hiện tại của chúng và lƣu trữ các thông tin vào một cơ sở dữ liệu

định vị (location database. Thông tin định vị đƣợc lƣu trữ trong cơ sở dữ liệu định vị

thông thƣờng ít nhất phải bao gồm địa chỉ IP, cổng, và tên ngƣời dùng username

Back-to-back User Agent: một UAS liên kết tới một UAC, hoạt động nhƣ một UAS và

nhƣ một UAC đƣợc liên kết bởi một vài ứng dụng logic.

1.1.3 Thiết lập cuộc gọi sử dụng giao thức SIP

Ta xem xét ba mô hình thiết lập cuộc gọi và ngắt kết nối, đó là: trực tiếp, sử dụng

Proxy Server, và sử dụng Redirect Server.

a) Thiết lập cuộc gọi trực tiếp (Direct Call Setup)

Ví dụ đầu tiên trong hình 1.5 biểu diễn phiên thời gian thực (tele-/video

conference) mở ra theo phƣơng thức peer-to-peer. Trong trƣờng hợp này, các peer biết

địa chỉ IP của mỗi peer còn lại và proxy server không đƣợc sử dụng. Khi

[email protected] gọi [email protected], UA A gửi bản tin mời phiên (1) tới UA B. UA B

trả lời ngay lập tức là 100 TRYING (2), nói với UA A rằng bản tin mời đã đƣợc nhận.

Sau đó UA B cảnh báo cho ngƣời sử dụng nó về các cuộc gọi đến, và gửi 180

RINGING (3) tới UA A.

Khi ngƣời sử dụng của UA B chấp nhận cuộc gọi, UA B gửi 200 Ok (4) tới UA A, lần

trả lời tiếp theo sử dụng bản tin ACK (5). Đây đƣợc gọi là bắt tay 3 bƣớc (three-way

handshake) và đƣợc sử dụng để bảo đảm việc thiết lập phiên thành công trong trƣờng

hợp sử dụng bản tin lớp truyền tải UDP không tin cậy. Sau khi việc thiết lập phiên

thành công, luồng phƣơng tiện truyền thông giữa các UA có thể bắt đầu (6).

Page 22: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 10

Hình 1-5: Khởi tạo phiên SIP – Phương thức P2P

Bản tin INVITE và 200 OK đƣợc sử dụng để mang các tham số cần thiết cho

phiên thời gian thực. Các tham số thƣờng bao gồm ít nhất là các giao thức sẵn có, địa

chỉ IP, và cổng.

Ngoài ra ta có thể thiết lập cuộc gọi trực tiếp qua SIP gateway nhƣ hình bên dƣới:

Hình 1-6: Thiết lập cuộc gọi trực tiếp thông qua SIP gateway

Khi UA nhận ra địa chỉ của thiết bị đầu cuối từ thông tin đƣợc lƣu trữ, hoặc có

khả năng phân giải nó bằng một số cơ chế nội bộ, các UAC có thể trực tiếp khởi tạo

các thủ tục thiết lập cuộc gọi (UAC-to-UAS). Nếu UAC nhận diện đƣợc đích đến

UAS, client sẽ liên lạc trực tiếp với server. Trong tình huống mà các client không thể

thiết lập đƣợc mối quan hệ trực tiếp này thì client sẽ phải nhờ đến sự trợ giúp của

network server.

Quá trình thiết lập cuộc gọi trực tiếp diễn ra như sau:

Page 23: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 11

1. UAC nguồn sẽ gửi một lời mời (INVITE) tới UAS đích. Bản tin này chứa mô tả

thiết bị đầu cuối của UAC và SDP.

2. Nếu UAS đích xác định rằng các tham số cuộc gọi là chấp nhận đƣợc, nó sẽ

phản hồi tích cực lại UAC nguồn.

3. UAC nguồn phát ra bản tin ACK.

Tại thời điểm này, UAC và UAS đã có đầy các thông tin cần thiết để thiết lập các

phiên RTP giữa chúng.

b) Thiết lập cuộc gọi sử dụng Proxy Server

Những thủ tục của proxy server sẽ không làm ảnh hƣởng (transparent) tới UA. Các

proxy server sẽ chặn và chuyển tiếp lời mời (INVITE) đến UA đích thay cho UA

nguồn.

Một proxy server đáp ứng những vấn đề của phƣơng pháp thiết lập cuộc gọi. trực

tiếp bằng điều khiển và quản lý tập trung các thiết lập cuộc gọi và cung cấp thêm khả

năng phân giải địa chỉ động và cập nhật.

Hình 1-7: Thiết lập cuộc gọi sử dụng Proxy Server

Điểm có lợi của các UA là không cần biết vị trí của UA đích nhƣng nó vẫn có

thể giao tiếp với chúng. Nhƣợc điểm của phƣơng pháp này là nó sử dụng thêm proxy

server-đòi hỏi thêm nhiều bản tin và tạo ra một sự lệ thuộc vào proxy server. Nếu

proxy server bị hỏng, các UA sẽ không có khả năng tự thiết lập các phiên.

Page 24: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 12

Lƣu ý: Mặc dù các hoạt động của proxy server thay mặt cho một UA để thiết lập cuộc

gọi nhƣng các UA vẫn thiết lập các phiên RTP trực tiếp với nhau.

Khi sử dụng proxy server, quá trình thiết lập cuộc gọi diễn ra như sau:

1. UAC nguồn gửi INVITE tới proxy server.

2. Proxy server, nếu cần, sẽ hỏi location server để xác định đƣờng đến đích và địa

chỉ IP của nó.

3. Proxy server gửi INVITE tới UAS đích.

4. Nếu UAS đích xác định rằng các tham số cuộc gọi là chấp nhận đƣợc nó sẽ

phản hồi tích cực lại proxy server.

5. Proxy server phản hồi lại UAC nguồn.

6. UAC nguồn phát ra bản tin ACK.

7. Proxy server chuyển tiếp bản tin ACK tới UAS đích. UAC và UAS bây giờ đã

có đầy các thông tin cần thiết để thiết lập phiên RTP giữa chúng.

c) Thiết lập cuộc gọi sử dụng Redirect Server

Redirect Server đƣợc lập trình để tìm ra một đƣờng đi tới đích cần đến. Thay vì

chuyển tiếp INVITE đến đích này, các Redirect Server sẽ thông báo trở lại UA các tọa

độ đích đến mà UA nên thử tiếp theo.

Hình 1-8: Thiết lập cuộc gọi sử dụng Redirect Server.

Page 25: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 13

Redirect server mang nhiều ƣu điểm của proxy server. Tuy nhiên, số lƣợng các

bản tin liên quan đến việc tái định hƣớng là ít hơn so với proxy server. UA có một khối

lƣợng công việc nặng hơn vì nó phải khởi tạo lời mời tiếp theo.

Khi sử dụng redirect server, quá trình thiết lập cuộc gọi diễn ra như sau

1. Các UAC nguồn gửi INVITE đến redirect server.

2. Redirect server, nếu cần, sẽ hỏi location server để xác định đƣờng đến đích và

địa chỉ IP của nó.

3. Redirect server sẽ trả lời về cho UAC nguồn một đáp ứng “chuyển” (“moved”)

với địa chỉ IP nhận đƣợc từ location server.

4. UAC nguồn chấp nhận tái định hƣớng.

5. UAC nguồn gửi INVITE đến UAS từ xa.

6. Nếu UAS đích xác định đƣợc rằng các tham số gọi là chấp nhận đƣợc, nó sẽ có

phản hồi tích cực lại UAC.

7. UAC nguồn phát ra bản tin ACK. Các UAC và UAS bây giờ có đầy đủ các

thông tin cần thiết để lập phiên RTP giữa chúng.

1.2 LÝ THUYẾT VỀ MẠNG NGANG HÀNG P2P

1.2.1 Giới thiệu về mạng P2P

Ban đầu khi mạng máy tính mới ra đời, tốc độ máy còn thấp, số lƣợng máy tham

gia trong mạng chƣa cao, nhu cầu trao đổi thông tin mới chỉ dừng lại ở những tập tin

có kích thƣớc bé nên việc quản lý mạng còn rất đơn giản, cấu trúc của mạng chỉ gồm

một vài máy. Các máy trong mạng đƣợc nối trực tiếp với nhau thông qua cổng COM

hay cổng máy in LPT… Đó là mô hình mạng ngang hàng sơ khai nhƣng lại là cơ sở để

phát triển mạng ngang hàng sau này trên một hệ thống máy tính rộng lớn.

Sự phát triển vƣợt bậc của công nghệ làm cho các máy tính ngày càng nhanh hơn,

lƣợng tài nguyên lƣu trữ là rất lớn và nhu cầu trao đổi của con ngƣời ngày càng tăng

lên. Lúc này các máy tính đƣợc kết nối khắp toàn cầu đòi hỏi phải có sự ra đời của

phƣơng thức quản lý mới với những giao thức, giao diện mới. Các mô hình hệ thống

mạng ra đời, Hình 1.11 thể hiện sự phát triển của hệ thống mạng máy tính.

Page 26: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 14

Hệ thống

Máy tính

Hệ thống

Tập trung

Hệ thống

Phân tán

Chủ - Khách

(Client-

Server)

Ngang hàng

Peer-to-Peer

Phẳng Phân cấpThuần túy

(pure)

Lai ghép

(Hybrid)

Hình 1-9: Phân loại hệ thống máy tính

Sự tính toán xử lí dữ liệu đầu vào hoặc tài nguyên tại các node trên mạng có thể

chia thành hệ thống xử lí tập trung và xử lí phân tán. Giải pháp tập trung dựa vào một

node đƣợc chỉ định là computer node sẽ xử lí tất cả các ứng dụng cục bộ. Hệ thống tập

trung thƣờng đƣợc triển khai tại một cơ quan, tổ chức khi các máy tính đƣợc liên kết

với nhau trong một không gian kín, không có sự liên kết với mạng bên ngoài. Với hệ

thống phân tán, các bƣớc xử lí một ứng dụng đƣợc chia đều giữa các node tham gia với

mục đích giảm thiểu chi phí tính toán và truyền thông. Mọi thông tin, tài nguyên trong

mạng đƣợc phân tán khắp nơi.

Hệ thống phân tán có thể đƣợc chia nhỏ hơn thành mô hình mạng chủ-khách và

mô hình ngang hàng. Trong hệ thống mạng chủ-khách có sự phân biệt giữa các máy

tính trong mạng, một số ít các máy gọi là máy chủ (server), đây là những máy có khả

năng tính toán rất mạnh, tốc độ xử lý nhanh. Tại những máy này có lƣu trữ tài nguyên

mạng và các dịch vụ, nó đóng vai trò là ngƣời phục vụ cho các yêu cầu của máy tính

khác trong mạng về tài nguyên và dịch vụ. Phần lớn các máy còn lại gọi là máy khách

(client), nó chỉ đƣa ra các yêu cầu và sử dụng tài nguyên trên mạng mà không thể chia

sẻ các tài nguyên hay dịch vụ của chính nó. Trong hệ thống chủ-khách các máy khách

khi vào hệ thống đƣợc nối với máy chủ, nhận quyền truy nhập và tài nguyên mạng từ

Page 27: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 15

máy chủ. Các máy khách đƣợc sắp xếp tổ chức theo một quy luật nhất định và đặt dƣới

sự quản lý của máy chủ. Mô hình hệ thống chủ-khách đƣợc minh họa nhƣ Hình 1-2.

` ` `

Server

Client Client Client

Hình 1-10: Mô hình Client-Server

Trong hệ thống chủ-khách có thể phân loại ra thành hệ thống phẳng (flat) và hệ

thống có trật tự phân cấp (hierachical). Việc phân loại này dựa trên cấu trúc của hệ

thống. Trong hệ thống phẳng tất cả các máy khách chỉ kết nối với duy nhất một máy

chủ phục vụ, còn trong hệ thống có phân cấp thì các máy đƣợc phân theo thứ bậc về

vai trò trong mạng làm cải thiện tính linh hoạt của hệ thống.

Ƣu điểm chính của hệ thống này là sự đơn giản của nó. Vì tất cả dữ liệu đều đƣợc

tập trung tại một vị trí nên việc quản lý hệ thống là khá dễ dàng và cũng tƣơng đối dễ

bảo mật. Tuy nhiên, trở ngại của hệ thống này cũng chính bởi mọi thông tin đều tập

trung tại máy chủ. Do đó, nó là một điểm có thể gây lỗi trầm trọng cho hệ thống vì nếu

gặp trục trặc, toàn bộ các ứng dụng client nối với server cũng sẽ gặp trục trặc theo.

Server cũng là nơi làm đình trệ hiệu năng của hệ thống. Mặc dù kiến trúc Client/Server

đƣợc chấp nhận rộng rãi tại các Web-server hay các database-server nhƣng nhƣợc

điểm về tính mở rộng và tỉ lệ gặp lỗi làm cho hệ thống này không thích hợp với việc

triển khai các ứng dụng phân tán đa năng.

Peer-to-Peer (hay P2P - mạng ngang hàng), là mạng mà trong đó hai hay nhiều

máy tính chia sẻ các tập tin và truy nhập các thiết bị nhƣ máy in mà không cần đến

máy chủ hay các phần mềm máy chủ. Ở dạng đơn giản nhất mạng ngang hàng đƣợc

tạo ra bởi hai hay nhiều máy tính kết nối với nhau và chia sẻ tài nguyên mà không phải

thông qua một máy chủ dành riêng. Mạng ngang hàng dựa vào khả năng và băng tần

Page 28: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 16

của các máy tính tham gia vào mạng hơn là tập trung vào một số các máy tính gọi là

server. Nó đƣợc sử dụng cho kết nối các node thông qua các kết nối đặc biệt và đƣợc

dùng cho nhiều mục đích nhƣ chia sẻ tài liệu, chia sẻ âm nhạc, hình ảnh, dữ liệu, lƣu

lƣợng điện thoại… Mô hình của mạng ngang hàng đƣợc thể hiện trên Hình 1.13.

`

``

`

Hình 1-11: Mạng ngang hàng

Tính chất phân tán và không tập trung của P2P tạo cho nó nhiều ƣu điểm so với mô

hình client-server nhƣ:

- Không cần quản lý: điều khiển, dung lƣợng và quá trình xử lý phân tán giúp

giảm sự cần thiết cho các công việc quản lý tập trung, và do đó tiết kiệm

đƣợc chi phí cũng nhƣ bỏ ra nhiều nguồn tài nguyên cho các nhiệm vụ khác.

- Tiết kiệm chi phí: khi các peer sử dụng cơ sở nền tảng của chính nó để cung

cấp các dịch vụ và tài nguyên, không cần mua, duy trì và quản lý các máy

chủ và hạ tầng mạng để theo kịp các dịch vụ.

- Hiệu năng: các tài nguyên đƣợc tái tạo và phân tán mang dung lƣợng tới

khách hàng của nó gần hơn và cho phép chuyển hƣớng các yêu cầu tới các

peer đang bị sử dụng thấp hơn. Điều này có nghĩa là có ít nút thắt cổ chai

hơn trong hệ thống, và do đó hiệu năng sẽ tốt hơn từ quan điểm của peer.

Page 29: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 17

- Hiệu quả: quá trình xử lý phân tán tối ƣu nhu cầu về các tài nguyên phần

cứng. Các tài nguyên mạng đƣợc sử dụng hiệu quả hơn, bởi vì các tài

nguyên khi đƣợc kết hợp sẽ làm tăng công xuất xử lý, tối ƣu việc sử dụng

mạng, và giảm chi phí cũng nhƣ không gian lƣu trữ để lƣu trữ thông tin.

- Độ khả dụng: các tài nguyên đƣợc tái tạo và phân tán mang dung lƣợng tới

khác hàng của nó gần hơn, điều này giúp tăng độ khả dụng của dung lƣợng.

- Độ tin cậy: khi không có điểm lỗi đơn-single point of failure và các tài

nguyen đƣợc trải ra một số node, khả năng chịu lỗi của mạng sẽ tăng lên.

Khó để tạo ra những tấn công an ninh tới các dịch vụ, khi các tài nguyên

điều khiển, quá trình xử lý, và dữ liệu lƣu trữ đƣợc phân tán và tái tạo.

- Khả năng mở rộng: kích thƣớc mạng không bị giới hạn bởi cá tài nguyên

máy chủ. Mỗi peer mới đóng góp tới hệ thống, nó tạo nên một hệ thống với

khả năng mở rộng tự động.

- Độc lập về vị trí: các yêu cầu có thể đƣợc tạo ra mà không cần quan tâm tới

vị trí bởi vì các tài nguyên đƣợc phân tán. Không giống nhƣ mô hình client-

server, chất lƣợng dịch vụ và hiệu năng không phụ thuộc vào khoảng cách

tới máy chủ.

- Quyền tự chủ của các peer: các peer tự do hơn và điều khiển đối với cái gì

và làm thế nào để đóng góp dung lƣợng hay tài nguyên vào hệ thống.

1.2.2 Phân loại các mạng P2P

Phân quyền là một khái niệm cơ bản của các hệ thống P2P. Điều này bao gồm

phân tán về lƣu trữ, quá trình xử lý, chia sẻ thông tin và thông tin điều khiển. Mặc dù

những đặc điểm cơ bản của các hệ thống P2P khác nhau là giống nhau, chúng vẫn có

những điểm khác nhau cần quan tâm ví dụ nhƣ cấu trúc mạng, mức độ tập trung, cách

thức giao tiếp, các cơ chế phân tán dung lƣợng, hiệu năng và các đặc điểm bảo mật.

Do dó, các hệ thống P2P có thể tạm phân loại theo cấu trúc và mức độ tập trung của

chúng hay cơ chế tìm kiếm tài nguyên.

1.2.2.1 Phân loại theo mức độ phân quyền

Phân quyền là một trong những khái niệm chính của hệ thống mạng ngang

hàng. Điều này bao gồm phân phối tài nguyên lƣu trữ, sự xử lý, thông tin chia sẻ cũng

nhƣ thông tin điều khiển. Dựa trên cơ sở mức độ phân quyền và cách thức trao đổi,

Page 30: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 18

thu nhận tài nguyên của các máy tính trong mạng ngang hàng ngƣời ta chia mạng

ngang hàng ra làm hai loại kiến trúc chính:

1.2.2.1.1 Mạng P2P thuần nhất

Hình 1-12: Mạng ngang hàng thuần nhất

Trong hệ thống này, tất cả các máy đều đƣợc nối với nhau, đây là mô hình thể

hiện chính xác nhất bản chất của mạng ngang hàng. Trong mạng ngang hàng hoàn toàn

không có máy chủ trung tâm quản lý mạng, mọi máy tính trong mạng có vai trò vừa là

máy chủ vừa là máy khách. Trong mạng không có các máy định tuyến hay trung tâm

định tuyến, các máy trong mạng tự định tuyến cho chính nó. Trong hệ thống nhƣ vậy

tất cả các máy là cân bằng về chức năng, các máy là các node và đƣợc gọi là “serv-

ent”.

Ƣu điểm của loại mạng này là khả năng mở rộng nhanh, khả năng chịu lỗi của

hệ thống lớn, các máy trong mạng có tính tự chủ cao. Khi trong mạng có một vài node

lỗi thì không gây ra lỗi toàn mạng và dễ dàng khắc phục. Các node có vai trò lớn hơn

đối với dữ liệu và tài nguyên của nó. Nhƣợc điểm chính của mạng là tốc độ phát hiện

thông tin chậm, không đảm bảo chất lƣợng dịch vụ, khó đoán biết hành vi của hệ

thống.

Các mạng ngang hàng thuần tuý có thể kể nhƣ: Gnutella, Freenet, Chord, CAN...

Ví dụ của kiến trúc phân tán thuần túy (purely decentralized ): Gnutella

Giao thức Gnutella nguyên thủy là một ví dụ của kiến trúc P2P phân tán thuần

túy. Khi các Gnutella servent khởi động, nó tìm kiếm một vài servent lân cận và thông

Page 31: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 19

báo sự sẵn sàng của mình, và cứ thế quảng bá nó tới những servent lân cận. Mô hình

này sẽ tiếp tục đệ quy cho đến khi thời gian sống (TTL) , giảm đi một sau khi bản tin

đi qua mỗi node, và tiến tới 0.

Hình 1-13: Nguyên lý hoạt động của Gnutella

Hình 1.13 minh họa nguyên lý hoạt động của Gnutella khi tìm kiếm các nguồn

tài nguyên. Ban đầu, A sẽ gửi một bản tin truy vấn tới tất cả các servent lân cận của nó,

B, C, và D (1). Nếu nguồn tài nguyên truy vấn không đƣợc tìm thấy, một lần nữa

chúng quảng bá truy vấn tới tất cả các servent lân cận của chúng, nếu tại C, sẽ gửi tới

E, F và G (2). Nếu tài nguyên vẫn không đƣợc tìm thấy, mô hình này sẽ tiếp tục đệ quy

với các node ở mỗi mức mới, cho tới khi nguồn tài nguyên đƣợc tìm thấy hay TTL về

0. Trong trƣờng hợp này, tài nguyên đƣợc tìm thấy ở F. F phản hồi tới C với một bản

tin thành công bao gồm thông tin về vị trí của nó (3). C sau đó gửi bản tin thành công

này tới A (4). Việc truyền file đƣợc tạo ra sau đó giữa A và F (5). Còn với các peer

khác thì truy vấn sẽ đƣợc chuyển tiếp cho tới khi TTL về 0.

Lợi thế quan trọng nhất của P2P phân tán thuần túy là nó không lệ thuộc vào

các máy chủ tập trung, do đó hiệu quả chi phí về phía node, khả năng chịu lỗi và khả

năng làm việc không cần bảo dƣỡng. Tuy nhiên chúng tạo ra một khối lƣợng lớn lƣu

lƣợng mạng, nhƣ trong hình 3. Số lƣợng các bản tin quảng bá đƣợc truyền đi tăng theo

Page 32: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 20

hàm mũ với mức tăng tuyến tính theo chiều sâu của việc tìm kiếm. Chúng cũng kém

hơn các kiến trúc khác ở hiệu quả tìm kiếm, nếu không có bất kỳ cấu trúc lớp phủ.

Các kiến trúc phân tán thuần túy cần DHT hoặc các cấu trúc lớp phủ dựa trên tác nhân

di động để đạt đƣợc hiệu năng thích đáng và lƣợng tải trong mạng đủ thấp.

1.2.2.1.2 Mạng P2P lai ghép

Kiến trúc P2P lai ghép giải quyết những nhƣợc điểm của kiến trúc P2P thuần

túy nhƣ định tuyến không hiệu quả và thiếu hụt an ninh.

Mạng P2P lai ghép có một máy chủ trung tâm dùng để lƣu trữ thông tin của các

máy khách và trả lời các truy vấn thông tin của chúng. Máy chủ này điều khiển hoạt

động của mạng nhƣ một phần tử có thể kiểm soát toàn bộ các máy khác, đảm bảo tính

chặt chẽ của thông tin trên mạng. Các máy khách có vai trò lƣu trữ thông tin, tài

nguyên đƣợc chia sẻ và cung cấp các thông tin của nó cho máy chủ. Tất cả các luồng

dữ liệu thông thƣờng đều đƣợc truyền trực tiếp giữa các peer, chỉ các luồng thông tin

điều khiển mới đƣợc truyền qua Server trung tâm. Có hai kiểu mạng lai ghép: mạng lai

ghép với chỉ mục tập trung và mạng lai ghép chỉ mụcphân tán.

Mạng lai ghép với chỉ mục tập trung

PeerPeer

Discovery

Server

(Máy chủ

Khám phá)

Peer

Peer

Trao đổi dữ liệu

Hình 1-14: Mạng lai ghép với chỉ mục tập trung

Trong mạng lai ghép chỉ mục tập trung có một máy chủ trung tâm bảo trì các

chỉ số của dữ liệu hoặc tài nguyên hiện tại đang đƣợc chia sẻ bởi các máy khách tích

cực, mỗi máy khách duy trì một kết nối tới máy chủ trung tâm để gửi các yêu cầu. Hệ

thống này với một server trung tâm đơn giản nhƣng xử lí nhanh, có thể tìm kiếm phát

hiện thông tin hiệu quả đảm bảo trên toàn bộ hệ thống. Tuy vậy khả năng mở rộng

không cao mô hình này rất dễ bị lỗi và sụp đổ khi máy chủ trung tâm bị lỗi hoặc bị tấn

Page 33: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 21

công, kích thƣớc cơ sở dữ liệu và khả năng đáp ứng yêu cầu của nó là có giới hạn.

Kiến trúc này đƣợc sử dụng trong mạng Napster.

Ví dụ về kiến trúc phân tán lai ghép với chỉ mục tập trung : Napster

Napster là một kiến trúc hybrid decentralized điển hình. Kiến trúc này bao gồm

các peer và một server chuyên dụng hay một tập hợp các server để duy trì một bảng

liệt kê các peer và tài nguyên của chúng. Việc truyền dữ liệu và giao tiếp giữa các peer

đƣợc thực hiện trực tiếp giữa các peer.

Hình 1-15: Nguyên lý hoạt động của Napster

Hình 1.15 minh họa hoạt động của Napster. Sau khi kết nối tới server, peer A

duy trì kết nối tới nhóm server . Khi ngƣời sử dụng của peer A truy vấn nguồn tài

nguyên, A gửi bản tin query tới nhóm server (server cluster) (1). Các server trong

nhóm sau đó hợp tác để tìm ra nguồn tài nguyên (2) và gửi trả lại một danh sách các

nguồn tài nguyên thích hợp tới A (3). Sau đó, A tải xuống nguồn tài nguyên trực tiếp

từ B (4).

Ƣu điểm của Napster và các kiến trúc phân tán lai ghép chỉ mục tập trung đó là quá

trình truy vấn hiệu quả và phần mào đầu thấp. Tuy nhiên, server nằm ở trung tâm dẫn

tới các vấn đề liên quan đến nhu cầu duy trì, chi phí, khả năng dễ tổn thƣơng, và khả

năng mở rộng kém.

Mạng lai ghép với chỉ mục phân tán minh họa trong hình 1-16.

Page 34: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 22

Siêu

node

Peer

node

Siêu

node

Siêu

node

Peer

node

Peer

node

Peer

node

Peer

nodePeer

node

Peer

node

Peer

node Peer

node Trao đổi dữ liệu

Hình 1-16: Mạng lai ghép với chỉ mục phân tán

Trong hệ thống này tồn tại một số siêu node lƣu chỉ mục thông tin về các peer

cục bộ. Truy vấn thông tin đƣợc gửi tới siêu node, nó là proxy cho các peer cục bộ. Do

đó truy vấn thông tin nhanh hơn và lƣu lƣợng trao đổi thông tin giữa các node ít hơn so

với hệ thống P2P thuần nhất. So với hệ thống chỉ số tập trung nó có ƣu điểm là giảm

tải đáng kể cho server tránh lỗi cho toàn hệ thống nhƣng phát hiện thông tin chậm hơn.

Ví dụ: mạng Kazaa, Morpheus.

Ví dụ : Kiến trúc JXTA

JXTA là một trong các giao thức P2P sử dụng kiến trúc mạng phân tán một

phần (partially decentralized). Mạng JXTA bao gồm các peer nằm ở biên (edge-peer)

và các super-peer (các rendezvous peer –peer hẹn gặp và relay peer-peer chuyển tiếp).

Khi một peer tham ra vào một mạng JXTA, nó tìm kiếm peer hẹn gặp gần nhất và kết

nối tới đó. Từ thời điểm này, edge peer bắt đầu sử dụng rendezvous peer nhƣ một

gateway tới mạng P2P. Rendezvous peer giữ một danh sách các edge peer của nó và

các tài nguyên đƣợc chia sẻ của chúng. Các redenzvous peer tự tổ chức thành một

mạng lƣới ghép đôi lỏng lẻo, cung cấp các truy vấn và thông tin giữa các peer với

nhau. Trong khía cạnh này, JXTA khác nhiều so với kiểu truy vấn quảng bá tới các

peer lân cận của Gnutella. JXTA thiết lập một mạng phủ bên trên lớp IP, vì vậy nó

cũng là một kiến trúc P2P có cấu trúc. Các rendezvous peer sử dụng DHT để định

tuyến và tìm kiếm tài nguyên. Lớp phủ thực hiện nhiều chức năng tiên tiến ,bao gồm

các nhóm peer, chuyển dịch NAT…

Page 35: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 23

Hình 1-17: Nguyên lý hoạt động của JXTA

Tìm kiếm các nguồn tài nguyên trong JXTA đƣợc minh họa trong hình 1.19.

Một peer (ví dụ là peer A) đang yêu cầu một tài nguyên, mà trong trƣờng hợp này vị trí

của peer nằm trong mạng đằng sau NAT. Khi truy vấn một nguồn tài nguyên, A gửi

một truy vấn tới rendezvous peer của nó (trong ví dụ này là RP 1 (1)). Bảng danh mục

của RP1 không chứa các tài nguyên đƣợc yêu cầu, vì vậy nó chuyển tiếp truy vấn tới

rendezvous peer RP3 của nó (2). Bảng mục lục của RP3 chứa nguồn tài nguyên yêu

cầu với thông tin rằng tài nguyên đó có sẵn trong một vài edge-peer của RP4 (3), do đó

RP3 chuyển tiếp truy vấn tới RP4 (4). RP4 biết nguồn tài nguyên nằm trong các edge

peer B của nó, vì thế nó chuyển tiếp truy vấn tới B (5). Vì B nằm trong một mạng sử

dụng NAT, nó gửi một đáp ứng tới A thông qua relay (và rendezvous ) peer RP4 (6).

Sau đó, dữ liệu đƣợc chuyển giữa A và B sử dụng RP4 nhƣ một relay (7).

1.2.2.2 Phân loại theo cơ chế tìm kiếm

Cơ chế định vị thông tin trong hệ thống là đặc điểm căn bản trong hệ thống P2P.

Cơ chế tìm kiếm trong mạng ngang hàng đƣợc phát triển từ thế hệ thứ nhất với cấu

trúc danh mục tập trung tới thế hệ thứ hai với cơ chế yêu cầu liên tục và thế hệ thứ ba

dựa vào bảng băm phân tán.

1.2.2.2.1 Cơ chế danh mục tập trung

Page 36: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 24

DANH MỤC

( Index )

1

3

2

4

5

: Tìm kiếm

: Tải về

Hình 1-18: Cơ chế danh mục tập trung

Cơ chế này đƣợc sử dụng trong mạng lai ghép, các máy khách kết nối tới máy

chủ chứa trung tâm thƣ mục, là nơi lƣu trữ tất cả các thông tin về vị trí và cách sử dụng

tài nguyên. Dựa trên yêu cầu từ máy khách trung tâm chỉ số sẽ đƣa yêu cầu tới máy

khách tốt nhất mà có thƣ mục phù hợp với yêu cầu. Máy khách tốt nhất có thể là rẻ

nhất, nhanh nhất, gần nhất, hoặc sẵn sàng nhất, phụ thuộc vào ngƣời sử dụng cần. Sau

đó dữ liệu sẽ đƣợc trực tiếp trao đổi giữa hai máy khách. Mạng Napster sử dụng

phƣơng pháp này, một máy chủ trung tâm sẽ giữ gìn chỉ số của dữ liệu với các trƣờng

tiêu đề của tất cả các file trên mạng, một bảng các thông tin đăng kí kết nối của ngƣời

dùng nhƣ địa chỉ IP, tốc độ kết nối…, một bảng danh sách các file mà ngƣời sử dụng

giữ và chia sẻ trong mạng. Khi bắt đầu, máy khách sẽ tiếp xúc với máy chủ trung tâm

và đƣa ra một danh sách với các file mà nó giữ. Khi máy chủ thu đƣợc một yêu cầu từ

ngƣời dùng. Nó sẽ tìm kiếm cho chỉ số phù hợp file cần tìm, trả lại danh sách những

ngƣời dùng đang giữ file phù hợp. Ngƣời dùng sẽ thiết lập một kết nối trực tiếp tới

máy đang giữ file và lấy nó về.

Mô hình này có nhƣợc điểm là khả năng mở rộng không cao, dễ bị lỗi toàn hệ thống.

1.2.2.2.2 Cơ chế yêu cầu liên tục

Mô hình mạng ngang hàng hoàn toàn trong hình 1-19, ở đó mỗi điểm (peer)

không lƣu giữ bất kỳ trung tâm thƣ mục nào và mỗi điểm sẽ công bố thông tin về nội

dung chia sẻ trong mạng ngang hàng. Vì vậy không một điểm đơn nào biết về tất cả

các tài nguyên, một điểm khi cần tìm kiếm tài nguyên nó sẽ gửi yêu cầu tới tất cả các

điểm đang kết nối với nó, cứ nhƣ thế yêu cầu đƣợc gửi đi cho tới khi đƣợc trả lời hoặc

khi số bƣớc gửi yêu cầu là cực đại.

Page 37: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 25

1

2

3

54

6: Tìm kiếm

: Tải về

Hình 1-19: Cơ chế yêu cầu liên tục

Khi số điểm trên mạng lớn thì lƣu lƣợng trên mạng sẽ rất lớn, đây là nhƣợc

điểm của mô hình tìm kiếm này. Hệ thống này chỉ làm việc hiệu quả với mạng nhỏ

nhƣ Gnutella. Mô hình cải tiến đƣa vào khái niệm super peer giảm tiêu thụ băng thông

và cho khả năng mở rộng cao hơn ví dụ Kazaa.

1.2.2.2.3 Cơ chế bảng hàm băm phân tán

Mô hình tiên tiến nhất và đƣợc sử dụng trong mạng ngang hàng hoàn toàn. Mô

hình định tuyến thêm vào cấu trúc thông tin về những tài nguyên đƣợc lƣu trữ sử dụng

bảng băm phân tán.

32

4

5

1

6

File

Id-h(data)- 0008

Id 001200

Id 000200

Id 001500

Id 000024

Id 000010

Hình 1-20: Cơ chế bảng hàm băm phân tán

Page 38: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 26

Giao thức này cung cấp một ánh xạ giữa số nhận dạng của tài nguyên (ID) và vị

trí lƣu trữ. Trong cấu trúc của bảng định tuyến một truy vấn có thể đƣợc định tuyến

hiệu quả tới node có tài nguyên mong muốn. Giao thức này làm giảm bớt số bƣớc mà

node trong mạng cần thiết để định vị tài nguyên tìm kiếm. Mỗi node đƣợc gắn một giá

trị ID và nó biết một vài các node khác. Khi một node muốn chia sẻ tài nguyên, tên và

nội dung của tài nguyên đó đƣợc băm tạo ra một ID gắn với tài nguyên đó. Tài nguyên

đƣợc định tuyến tới node có ID gần với ID của tài nguyên nhất. Khi một node muốn

lấy một tài nguyên nào đó nó gửi yêu cầu chứa ID của tài nguyên. Yêu cầu đƣợc

chuyển tới node có ID gần với ID của tài nguyên nhất, sau đó tài nguyên đƣợc chuyển

tới node yêu cầu. Các mạng ngang hàng thế hệ mới đều sử dụng phƣơng pháp tìm

kiếm này nhƣ: Freenet, Chord, Kademlia… Mô hình này đƣợc chứng minh là có hiệu

quả với mạng có số peer lớn. Tuy vậy nó vẫn tồn tại các nhƣợc điểm đó là khó cài đặt

tính năng tìm kiếm do phải biết trƣớc ID của file trƣớc khi gửi yêu cầu. Băm tên file

hoặc nội dung khác nhau tạo ra ID khác dẫn đến không tìm thấy file. Các node khi chia

vào các nhóm khác nhau không có sự liên hệ dẫn đến vấn đề „‟islanding‟‟(cô lập).

1.2.2.3 Phân loại theo cấu trúc

Cấu trúc mạng ngang hàng bao gồm tất cả các nút mạng đại diện cho các máy

tham gia và các liên kết giữa các nút mạng này. Một liên kết tồn tại giữa hai nút mạng

khi một nút mạng biết vị trí của nút mạng kia. Dựa vào cấu trúc liên kết giữa các nút

mạng ta có thể phân loại mạng ngang hàng thành 2 loại: có cấu trúc hay không cấu

trúc.

Một mạng ngang hàng không cấu trúc khi các liên kết giữa các nút mạng trong

mạng phủ đƣợc thiết lập ngẫu nhiên (tức là không theo qui luật nào). Những mạng nhƣ

thế này dễ dàng đƣợc xây dựng vì một máy mới khi muốn tham gia mạng có thể lấy

các liên kết có sẵn của một máy khác đang ở trong mạng và sau đó dần dần tự bản thân

nó sẽ thêm vào các liên kết mới của riêng mình. Khi một máy muốn tìm một dữ liệu

trong mạng ngang hàng không cấu trúc, yêu cầu tìm kiếm sẽ đƣợc truyền trên cả mạng

để tìm ra càng nhiều máy chia sẻ càng tốt. Hệ thống này thể hiện rõ nhƣợc điểm: tỉ lệ

tìm kiếm thành công thấp. Đối với tìm kiếm các dữ liệu phổ biến đƣợc chia sẻ trên

nhiều máy, tỉ lệ thành công là khá cao, ngƣợc lại, nếu dữ liệu chỉ đƣợc chia sẻ trên một

vài máy thì xác suất tìm thấy là khá nhỏ. Tính chất này là hiển nhiên vì trong mạng

ngang hàng không cấu trúc, không có bất kì mối tƣơng quan nào giữa một máy và dữ

liệu nó quản lý trong mạng, do đó yêu cầu tìm kiếm đƣợc chuyển một cách ngẫu nhiên

đến một số máy trong mạng. Số lƣợng máy trong mạng càng lớn thì khả năng tìm thấy

thông tin càng nhỏ. Một nhƣợc điểm khác của hệ thống này là do không có định

Page 39: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 27

hƣớng, một yêu cầu tìm kiếm thƣờng đƣợc chuyển cho một số lƣợng lớn máy trong

mạng làm tiêu tốn một lƣợng lớn băng thông của mạng, dẫn đến hiệu quả tìm kiếm

chung của mạng thấp.

Hầu hết các mạng ngang hàng không cấu trúc phổ biến nhƣ Napster, Gnutella,

Fasttrack và eDonkey2000.

Mạng ngang hàng có cấu trúc khắc phục nhƣợc điểm của mạng không cấu trúc

bằng cách sử dụng hệ thống DHT (Bảng Băm Phân Tán: Distributed Hash Table). Hệ

thống này định nghĩa liên kết giữa các nút mạng trong mạng phủ theo một thuật toán

cụ thể, đồng thời xác định chặt chẽ mỗi nút mạng sẽ chịu trách nhiệm đối với một phần

dữ liệu chia sẻ trong mạng. Với cấu trúc này, khi một máy cần tìm một dữ liệu, nó chỉ

cần áp dụng một giao thức chung để xác định nút mạng nào chịu trách nhiệm cho dữ

liệu đó và sau đó liên lạc trực tiếp đến nút mạng đó để lấy kết quả. Mô hình này đem

lại hiệu quả tìm kiếm cao nhƣng lại tăng chi phí duy trì khi các peer tham gia hay rời

khỏi mạng.

Một số mạng ngang hàng có cấu trúc nổi tiếng bao gồm Chord, CAN,

Kademlia, Pastry và Tapestry.

1.2.3 Bảng hàm băm phân tán (DHTs)

1.2.3.1 Khái niệm DHT

Một Hash Table (bảng băm) là một cấu trúc dữ liệu ánh xạ giữa key (khóa) và

value (giá trị). Tức là tƣơng ứng với một key, bảng hàm băm hash table sẽ trả về một

value. Để thực hiện việc ánh xạ, hash table sử dụng hash function (hàm băm) tính toán

vị trí lƣu value dựa trên key. Hash function phải đảm bảo: tránh xung đột và dễ dàng

thực hiện. Tránh xung đột nghĩa là ánh xạ giữa không gian key và không gian địa chỉ

phải đều và ngẫu nhiên đến mức có thể, ngoài ra thuật toán băm phải đơn giản, cho

hiệu quả cao.

Distributed Hash Table (DHT) là thuật toán đƣợc sử dụng trong các ứng dụng

P2P, DHT cho phép quản lý mạng P2P theo đúng nghĩa với độ tin cậy cao, khả năng

mở rộng, hiệu quả và có khả năng chịu lỗi.

DHT là một hash table đƣợc cài đặt nhƣ một hệ thống phân tán. Cũng nhƣ một

hash table, DHT cung cấp ánh xạ từ key đến value. Nhƣng không giống nhƣ hash table

thông thƣờng, các value trong một DHT đƣợc lƣu trên các node khác nhau trong mạng

chứ không phải lƣu trong một cấu trúc dữ liệu cục bộ. Thông qua một key, value tƣơng

ứng đƣợc lƣu tại một node phù hợp trên mạng hoặc đƣợc lấy về từ node tƣơng ứng trên

mạng.

Page 40: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 28

Trong một DHT, key đƣợc tính ra từ value. Tất cả các key đều nằm trên cùng

một không gian địa chỉ. Các ứng dụng chia sẻ file thƣờng sử dụng không gian địa chỉ

160 bit. Để xác định node nào lƣu value nào, mỗi node phải có một ID trong không

gian địa chỉ giống nhƣ không gian địa chỉ của key. Các DHT đƣa ra khái niệm khoảng

cách giữa hai ID (một key có thể xem nhƣ ID của value). Khi đó value đƣợc lƣu trên

node có ID gần với ID của value nhất.

Để lƣu một value trên mạng, một node gửi thông điệp yêu cầu lƣu dữ liệu tới

một contact phù hợp đƣợc chọn ra từ bảng routing table (bảng định tuyến), trong bảng

routing table, contact này có ID gần với ID của dữ liệu cần lƣu nhất. Quá trình cứ tiếp

tục nhƣ vậy, thông điệp đƣợc chuyển tiếp trên mạng cho đến khi nó gặp node có ID

gần với ID của dữ liệu nhất và value đƣợc lƣu trên node này.

Để tìm một value, thủ tục cũng tƣơng tự, node cần tìm dữ liệu sẽ gửi đi thông

điệp tìm kiếm dữ liệu. Sau quá trình chuyển tiếp thông điệp node lƣu dữ liệu sẽ đƣợc

tìm ra và node này sẽ trả dữ liệu cho node tìm kiếm.

Distributed Hash Tables có các ƣu điểm khác biệt so với dịch vụ hƣớng Client-

Server truyền thống:

DHT cho phép hoạt động phân tán, không cần duy trì một server trung tâm để

điều khiển hoạt động của mạng P2P. Cũng vì vậy, các ứng dụng P2P sử dụng DHT là

các ứng dụng P2P thuần túy.

Hệ thống có khả năng mở rộng, nghĩa là hệ thống vẫn hoạt động tốt ngay cả với

số lƣợng node và lƣu lƣợng trên mạng lớn.

Tải đƣợc cân bằng giữa các peer trong mạng.

Hệ thống dựa trên giả định rằng mạng không tĩnh và các thay đổi xuất hiện

thƣờng xuyên với các node tham gia hay rời khỏi mạng (còn gọi là churn).

Việc định tuyến và lấy dữ liệu nhanh và có thể hoàn thành trong thời gian tỷ lệ

logarit.

Hệ thống mạnh mẽ, nghĩa là nó có thể đứng vững ngay cả khi bị tấn công trên

diện rộng.

DHT cung cấp dịch vụ lƣu trữ, tìm kiếm dữ liệu đơn giản thông qua hai hàm

insert và lookup.

Page 41: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 29

Bảng Hàm băm phân tán

Node NodeNodeNode

Các ứng dụng phân tán

Chèn (khóa,dữ liệu) Tìm kiếm (khóa) Dữ liệu

Hình 1-21: Chức năng chính của DHT

Con cáo

Con cáo màu đỏ

chay trên băng

Con cáo màu đỏ

đi bộ trên băng

Hàm băm

Hàm băm

Hàm băm

DFCD3454

52ED879E

46042841

Peer

Dữ liệu Khóa (Key)

Mạng lưới

phân tán

Hình 1-22: Cơ chế làm việc của DHT

1.2.3.2 Giao thức Chord

Chord là một ví dụ của thuật toán DHT mà đã đƣợc nghiên cứu rộng dãi. Chord

sử dụng một kiến trúc vòng tròn, nhƣ đƣợc chỉ ra trong hình 1-23. Một node tham ra

vòng ring xác định vị trí của nó trong vòng ring và sau đó chèn bản thân nó vào giữa

hai hàng xóm lân cận. Một node trong một mạng Chord theo dõi node tiền nhiệm

(predecessor) ngay phía trƣớc nó và node tiếp sau nó, và đƣa ra việc kiểm tra theo chu

kỳ để đảm bảo rằng các node đó vẫn sẵn sàng. Khi một trong các node đó biến mất

hoặc là mất kết nối, mỗi node sẽ xác định node phía trƣớc và node tiếp sau mới. Ngoài

Page 42: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 1.Tổng quan về SIP và P2P

Đinh Thị Phương, D05VT1 Page 30

hai node bổ sung, node cũng duy trì một bảng chỉ đƣờng gọi là “ finger table” của các

node còn lại trong vòng ring. Số lƣợng các node trong bảng finger table tăng lên theo

hàm logarit của tổng số các node trong mạng, cho phép một mạng rất lớn đƣợc mở

rộng ra bởi một bảng chỉ đƣờng nhỏ. Khi mạng che phủ overlay network thực hiện tìm

kiếm, bảng chỉ đƣờng cho phép node nhanh chóng nhảy đến phần vòng ring mà đáp

ứng dữ liệu. Điều này cho phép vòng ring Chord có khả năng mở rộng và phát triển rất

lớn mà không tạo ra kết quả với độ trễ tra cứu rất lâu.

Hình 1-23: Chord ring

Các lĩnh vực ứng dụng của Chord với SIP bao gồm dịch vụ định vị phân tán,

đăng ký, DNS và chuyển dịch đi qua NAT và tƣờng lửa.

1.3 KẾT LUẬN CHƢƠNG I

Chƣơng 1 giới thiệu kiến thức cơ bản tổng quan về giao thức khởi đầu phiên SIP và

mạng ngang hang peer-to-peer. SIP là giao thức báo hiệu đƣợc sử dụng trong mạng

VoIP, để thiết lập, quản lý và kết thúc các phiên truyển thông đa phƣơng tiện, ta tìm

hiểu về kiến trúc, thành phần bản tin, quá trình thiết lập, duy trì và kết thúc cuộc gọi

với giao thức SIP. Mặt khác ta tìm hiểu về khái niệm mạng ngang hang peer-to-peer,

phân loại hệ thống mạng dựa trên cơ sở về mức độ phân quyền, về cơ chế tìm kiếm dữ

liệu và về cấu trúc mạng. Và phần cuối chƣơng giới thiệu tổng quan về DHT và một

giao thức DHT phổ biến hiện nay đó là Chord.

Page 43: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 31

CHƢƠNG 2: PEER-TO-PEER SIP

2.1 GIỚI THIỆU

2.1.1 Giới thiệu P2P SIP

Giao thức khởi đầu phiên SIP đã trở thành một tiêu chuẩn gần nhƣ là dành cho

truyền thông Voice-over Internet Protocol (VoIP). Nhƣ một giao thức IETF phổ biến

dành cho báo hiệu phiên, mục đích của nó là cung cấp một cơ sở hạ tầng cho các hệ

thống điện thoại di động thế hệ tiếp theo. SIP dựa trên hạ tầng client-server trong đó

các user agent đại diện cho các thiết bị kết cuối nhƣ clients, proxy server xử lý bản tin

SIP định tuyến giữa các user agent, và các registrar servers lƣu trữ các thông tin liên

lạc của client vào location service.

Với hạ tầng Client-Server, mạng SIP đặc trƣng bởi các nỗ lực quản lý cao. các hệ

thống đa phƣơng tiện VoIP dựa trên SIP không tránh khỏi vấn đề nhƣ khi số Client

tăng lên đến một mức độ nào đó thì nhu cầu về tải và băng thông tăng lên dẫn đến việc

máy chủ Server không có khả năng cung cấp dịch vụ cho các máy khách thêm vào hay

khi các máy chủ xảy ra sự cố, hệ thống không thể làm việc đƣợc.

Skype là một mạng điện thoại Internet ngang hàng đã tích hợp cơ chế peer-to-peer

(P2P) vào truyền thông VoIP, nó tạo ra một hạ tầng không có các thiết bị máy chủ đắt

tiền và hầu hết không có nhu cầu cấu hình phía client. Tuy nhiên, Skype đƣợc xây

dựng một cách độc quyền, các giao thức khó hiểu và các công ty viễn thông yêu cầu

các chuẩn có thể hoạt động với nhau, các nỗ lực tích hợp các kỹ thuật P2P vào SIP

(P2P SIP).

Có một số phƣơng pháp tiếp cận để tích hợp cơ chế P2P vào SIP: một là mở rộng

bản thân giao thức SIP , hai là tích hợp cơ chế P2P vào cơ chế gửi bản tin SIP hay tích

hợp trực tiếp kỹ thuật P2P vào user agent .

Việc mở rộng giao thức dẫn đến sự thay đổi trong phần mào đầu của SIP nhằm hỗ

trợ lớp phủ P2P, nó giới hạn sự tƣơng thích ngƣợc đến chuẩn SIP. Việc tích hợp cơ chế

P2P vào cơ chế gửi bản tin SIP hoặc trực tiếp vào SIP user agent dẫn đến sự thay đổi

các thực thể SIP nhƣng không thay đổi bản thân giao thức. Điều này duy trì khả năng

tƣơng thích với chuẩn SIP.

Page 44: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 32

2.1.2 Một số khái niệm trong mạng P2P SIP

Overlay Network: mạng phủ là một mạng máy tinh đƣợc xây dựng trên một

mạng khác. Các Node trong lớp phủ có thể đƣợc dùng nhƣ đang đƣợc nối với nhau

bằng các liên kết ảo hay logic, mỗi liên kết tƣơng ứng với một đƣờng dẫn, có thể thông

qua nhiều liên kết vật lý trong mạng nằm bên dƣới. Mạng P2P là mạng phủ bởi vì

chúng hoạt động bên trên Internet.. Mạng phủ có thể đƣợc xây dựng để cho phép định

tuyến các bản tin tới đích mà không cần một địa chỉ IP cụ thể. Ví dụ, bảng hàm băm

phân tán DHTs có thể đƣợc sử dụng để định tuyến bản tin tới một node có địa chỉ logic

cụ thể, địa chỉ IP không đƣợc biết trƣớc. Mạng phủ cũng đƣợc đề xuất nhƣ là một cách

để cải thiện định tuyến trên Internet, nhƣ thông việc đảm bảo chất lƣợng dịch vụ (QoS)

để đạt đƣợc chất lƣợng cao cho các luồng media.

Hình 2-1 : Mạng phủ

Page 45: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 33

Các đề xuất trƣớc đó nhƣ IntServ, DiffServ và IP Multicast không đƣợc có

đƣợc nhiều sự chấp thuận bởi vì chúng yêu cầu sửa đổi tất cả các bộ định tuyến trên

mạng. Mặt khác, mạng phủ có thể đƣợc từng bƣớc triển khai phần mềm giao thức lớp

phủ trên các trạm đầu cuối, không cần sự hợp tác từ các ISP. Lớp phủ không kiểm soát

việc các gói tin đƣợc định tuyến ở lớp mạng bên dƣới giữa hai node nhƣ thế nào,

nhƣng nó có thể kiểm soát trình tự của các node trong lớp phủ mà gói tin cần phải đi

qua trƣớc khi tới đƣợc đích của nó. Các giao thức trong mạng phủ nhƣ JXTA, DHTs…

Các peer trong lớp phủ cùng chạy thuật toán cơ sở dữ liệu phân tán. Thuật toán cơ sở

dữ liệu phân tán cho phép dữ liệu đƣợc lƣu trữ trên các peer và lấy ra một cách hiệu

quả. Nó cũng đảm bảo các mục dữ liệu sao chép đƣợc lƣu trữ trên nhiều hơn một peer,

vì vậy khi mất đi một peer thì không dẫn tới mất đi mục dữ liệu trong lớp phủ.

Vấn đề về NAT: Network Address Translators (NATs) là một trở ngại để thiết lập và

duy trì các mạng peer-to-peer, vì NAT cản trở sự truyền thông trực tiếp giữa các peer.

Một vài kiến trúc mạng P2P ngăn ngừa vấn đề này bằng cách nhấn mạnh rằng tất cả

các peer đều tồn tại trong cùng một không gian địa chỉ. Tuy nhiên, trong mô hình P2P

đã đồng ý rằng các peer có thể sống trong nhiều không gian địa chỉ đƣợc kết nối bởi

NAT. Điều này ngụ ý rằng các kết nối của giao thức Peer Protocol phải có khả năng đi

qua NAT. Nó cũng có nghĩa rằng các peer phải cùng cung cấp chức năng vận chuyển

phân tán mà cho phép một peer gửi một bản tin SIP tới một peer bất kỳ trong lớp phủ,

không có chức năng này thì 2 peer thuộc 2 không gian địa chỉ khác nhau không thể

trao đổi các bản tin SIP.

Peer: một node tham ra trong mạng phủ P2PSIP mà cung cấp các dịch vụ lƣu trữ và

vận chuyển tới các node khác trong lớp phủ P2PSIP. Mỗi peer có một nhận dạng duy

nhất bên trong lớp phủ đƣợc gọi là Peer-ID. Mỗi Peer có thể liên kết với một hoặc

nhiều thực thể SIP. Bên trong lớp phủ, peer có khả năng thực hiện nhiều hoạt động

khác nhau,bao gồm: tham ra và rời khỏi lớp phủ, vận chuyển các bản tin SIP bên trong

lớp phủ, lƣu trữ thông tin nhân danh lớp phủ, đặt thông tin vào lớp phủ (put), và lấy

thông tin ra từ lớp phủ (get).

Peer-ID: Thông tin để nhận dạng duy nhất mỗi Peer bên trong lớp phủ, đây là một giá

trị bằng số trong không gian băm. Nó thƣờng đƣợc gọi là Node-ID.

Client: một node tham ra trong mạng phủ P2PSIP mà có ít khả năng so với Peer.

Chúng có khả năng them, sửa chữa, kiểm tra và xóa thông tin trong lớp phủ.

Resource: Bất cứ điều gì về những thông tin có thể đƣợc lƣu trữ trong lớp phủ.

Page 46: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 34

Resource-ID: là giá trị nhận dạng duy nhất một tài nguyên và đƣợc sử dụng nhƣ một

key để lƣu trữ và lấy ra dữ liệu về tài nguyên. Một cách để tạo ra một Resource-ID là

áp dụng một hàm ánh xạ tới một số cái tên duy nhất (ví dụ nhƣ Username hay Service

name) đối với tài nguyên. Resource-ID đƣợc sử dụng bởi thuật toán dữ liệu phân tán

để xác định peer hay các peer chịu trách nhiệm lƣu trữ dữ liệu trong lớp phủ.

Resource Record: một khối dữ liệu, đƣợc lƣu trữ sử dụng cơ chế dữ liệu phân tán của

lớp phủ, mà bao gồm thông tin liên quan tới một tài nguyên cụ thể. Cho rằng có nhiều

loại resource record. Một số nắm giữ dữ liệu về ngƣời dùng, và một số khác nắm giữ

dữ liệu về các dịch vụ.

Responsible Peer: Peer mà chịu trách nhiệm lƣu trữ Resource Record cho một

Resource.

Peer Protocol: giao thức dùng để giao tiếp giữa các peer trong lớp phủ P2PSIP để chia

sẻ thông tin và tổ chức mạng phủ P2PSIP.

Client Protocol: giao thức giao tiếp giữa các Client và Peer. Nó đƣợc sử dụng để lƣu

trữ và lấy ra thông tin từ lớp phủ P2P.

Neighbors: tập hợp các P2PSIP Peer mà một peer hay một client biết trƣớc và có thể

tiếp cận mà không cần tra cứu.

Joining Peer: node đang cố gắng để trở thành một Peer trong một lớp phủ cụ thể.

Bootstrap Peer: một Peer trong lớp phủ, là điểm liên lạc đầu tiên của Joining Peer. Nó

chọn ra Peer mà sẽ phục vụ nhƣ một Admitting Peer và giúp cho Joining Peer liên lạc

với admitting peer.

Admitting peer: một peer trong lớp phủ giúp cho Joining Peer tham ra vào lớp phủ.

Việc lựa chọn admitting peer có thể phụ thuộc vào Joining peer (ví dụ phụ thuộc vào

Peer-ID của joining peer). Ví dụ, admitting peer phải đƣợc chọn nhƣ peer gần nhất

trong cấu trúc logic của lớp phủ tới vị trí tƣơng lại của joining peer. Sự chọn lựa

admitting peer là công việc đặc trƣng của bootstrap peer. Có thể cho phép bootstrap

peer chọn chính nó nhƣ một admitting peer.

Boostrap server: một node mạng đƣợc sử dụng bởi Joining Peer để xác định vị trí một

Bootstrap peer. Bootstrap Server có thể hoạt động nhƣ một proxy đối với các bản tin

giữa Joining peer và Boostrap Peer. Bản than Bootstrap server là một máy chủ ổn định

với một tên DNS mà bằng cách này hay cách khác (ví dụ nhƣ thông qua cấu hình)

truyền thông tới các peer mà muốn tham gia lớp phủ.

Page 47: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 35

Peer Admission: Hành động gia nhập một node (Joining Peer) vào một lớp phủ nhƣ

một peer. Sau khi quá trình gia nhập kết thúc, joining peer là một peer có đầy đủ các

chức năng của lớp phủ. Trong quá trình gia nhập, Joining peer có thể phải trình bày

những khả năng để chứng minh rằng nó có đủ quyền để tham ra lớp phủ.

Resource record insertion: hoạt động chèn mọt P2PSIP Resource Record vào cơ sở dữ

liệu phân tán. Việc chèn nhƣ vậy cho phép dữ liệu đƣợc lƣu trữ tại một hay nhiều peer.

dữ liệu có thể đƣợc lấy ra hay cập nhật sử dụng Resource-ID nhƣ một key.

2.1.3 Mô hình tham khảo P2P SIP

Mô hình tham khảo đƣợc trình bày trong hình 2-2. Nó minh họa các node khác

nhau và các phần tử mạng, vai trò và vị trí của nó trong mạng, cũng nhƣ các giao thức

truyền thông mà tôn tại trong kiến trúc P2PSIP. Các node P2PSIP là những P2PSIP

client (ordinary peer) hoặc là P2PSIP peer (super-peer), trong đó chỉ có các super-peer

góp phần tạo nên lớp phủ. Các ordinary peer kết nối tới các peer khác thông qua super-

peer. Những đầu cuối P2PSIP có thể trở thành P2PSIP peer (super-peer) nếu chúng

đáp ứng đƣợc một số điều kiện nhƣ độ khả dụng, độ ổn định, hiệu năng, hay dung

lƣợng về tài nguyên. Nếu không thì chúng sẽ là P2PSIP client. P2PSIP peer có thể đảm

đƣơng nhiều vai trò hỗ trợ phụ thuộc vào khả năng của chúng và vị trí trên mạng lƣới.

Những vai trò nhƣ gateway-, proxy-, hay redirect peer. Proxy và redirect peer có thể

giúp cho các SIP UA cơ bản truy nhập tới mạng P2PSIP. Gateway peer cung cấp khả

năng truy nhập giữa SIP cơ bản (ví dụ PSTN), và các mạng P2PSIP. Peer có thể nằm

đằng sau NAT. Sự hiện diện của NAT mang lại thêm thách thức và trở ngại cho truyền

thông P2PSIP, và do đó, những hàng dào NAT cũng có trong mô hình tham khảo.

P2PSIP peer giao tiếp thông qua giao thức P2PSIP Peer, trong khi P2PSIP client giao

tiếp với P2PSIP peer sử dụng giao thức P2PSIP Client.

Page 48: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 36

Hình 2-2: Mô hình tham khảo P2PSIP

2.1.4 So sánh mô hình CS SIP và P2P SIP

Client-server (CS) SIP triển khai nhiều server (chẳng hạn nhƣ SIP registrars,

SIP proxies…) đối với voicemail, third-party call control điều khiển cuộc gọi 3 bên,

IVR, hội nghị…, và ngoài ra còn có server STUN và TURN cho chuyển dịch NAT.

Chuẩn SIP không ủy nhiệm các máy chủ server và đề cập đến sự hoạt động của chúng.

Khi một SIP UA biết đƣợc vị trí của các bên mong muốn, tất cả sự điều khiển cuộc gọi

SIP có thể xảy ra tốt ở chế độ P2P, nó chỉ ra nơi mà các chức năng của hệ thống điện

thoại PSTN và PBX làm thế nào có thể đƣợc thi hành để sử dụng P2P điều khiển cuộc

gọi SIP.

Hình 2-3(a) chỉ quá trình khám phá và định tuyến cuộc gọi trong mô hình hình

thang ( the trapezoid model).

Page 49: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 37

Hình 2-3 : Khám phá và định tuyến cuộc gọi trong

(a) Mô hình hình thang đối với CS SIP

(b) Mô hình P2P SIP sử dụng DHTs trong một mạng phủ.

Mô hình CS SIP

Hình 2-4 : Mô hình SIP truyền thống

Page 50: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 38

Ngƣời gọi Caller trong hình 2-3a đầu tiên phải xác định SIP proxy để đi ra

ngoài (chúng ta không chỉ ra việc đăng ký để ở đây để cho dễ dàng hơn) bằng cách đầu

tiên tạo ra một yêu cầu request DNS SRV để lấy về một danh sách các SIP proxy đi ra

ngoài. Sau đó quyết định chọn một proxy trong danh sách để sử dụng, thứ 2 đó là một

truy vấn hồ sơ (record) DNS A sẽ trả lại địa chỉ IP của SIP proxy hƣớng ra ngoài

(outbound SIP proxy) đƣợc chọn. SIP UA của ngƣời gọi caller bây giờ sẽ gửi một lời

mời INVITE đến outbound proxy.

Outbound proxy bây giờ sẽ tạo ra 3 hoặc 4 truy vấn (queries) DNS để tìm địa

chỉ IP của inbound proxy:

1. Một ENUM NAPTR truy vấn URI của dịch vụ SIP.

2. Một truy vấn SRV để xác định danh sách của các proxy để đi vào trong.

3. Một A truy vấn để xác định địa chỉ IP của các inbound SIP proxy.

Outbound proxy bây giờ có thể chuyển tiếp lời mời INVITE đến inbound proxy.

Inbound proxy sẽ kiểm tra cơ sở dữ liệu tại vị trí của nó và gửi lời mời tới nhóm

đƣợc gọi calling. Điều này bao gồm quá trình khám phá và định tuyến trong ví dụ CS

SIP.

Mô hình P2P SIP

Hình 2-5: Mô hình P2PSIP

Page 51: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 39

Ngƣời gọi caller truy vấn lớp DHTs (bƣớc 1) trong mạng phủ để xác định vị trí

của peer node dành cho nhóm đƣợc gọi. Lớp DHT định tuyến câu hỏi truy vấn vị trí

đến node peer đích (bƣớc 2,3,4), nó sẽ trả lời và cung cấp địa chỉ IP của nó cho SIP

UA của ngƣời gọi caller (step 5). Trong bƣớc 6, lớp DHT trả về địa chỉ IP đến lớp SIP

của node peer của ngƣời gọi caller. SIP UA của ngƣời gọi bây giờ có thể gửi một lời

mời INVITE trực tiếp tới node peer bị gọi called peer node. Điều này bao gồm việc

khám phá và thiết lập cuộc gọi P2P.

Chú ý trong hình 2-3b thì lớp SIP và lớp DHT có thể độc lập hoàn toàn với

nhau và một điểm nổi bật đó là các chuẩn IETF cho phép nhiều sự lựa chọn trong

tƣơng lai của lớp DHT , ví dụ có thể không phải là giao thức Chord, nhƣ vậy để có một

kiến trúc linh hoạt mà có thể theo kịp với các nghiên cứu hiện tại trong các mạng P2P.

Giao diện giữa lớp SIP và lớp DHT, chính là đƣờng nét dứt trong peer node của ngƣời

gọi caller, là một API mà đã đƣợc chuẩn hóa.

2.2 TÍCH HỢP CÔNG NGHỆ P2P VÀO SIP

Có rất nhiều phƣơng pháp để hợp nhất các cơ chế P2P vào SIP để loại bỏ đi sự cần

thiết của các máy chủ tập trung. Một là sự mở rộng chuẩn SIP , hai mở rộng các thực

thể SIP liên quan tới các thiết bị đầu cuối …, nhƣ dịch vụ xác định vị trí SIP.

2.2.1 Sự mở rộng chuẩn SIP

Một sự mở rộng chuẩn SIP đƣợc gọi là dSIP, nó sử dụng các cơ chế P2P. Ý

tƣởng đó là duy trì một lớp phủ P2P trên cơ sở mở rộng các bản tin phục SIP phục vụ

nhƣ một máy chủ đăng ký registrar server phân tán để xác định vị trí tài nguyên. Phần

mở rộng của giao thức cho phép truy vấn và công khai thông tin liên lạc, các bản tin

SIP đƣợc định tuyến mà không cần bất kỳ một thực thể máy chủ tập trung nào. Bởi

vậy, sự bổ sung các mào đầu SIP đƣợc giới thiệu nhƣng không phải là một phƣơng

thức SIP mới.

dSIP đƣợc thiết kế để hỗ trợ nhiều giao thức DHT. Để bảo đảm khả năng tƣơng

thích tối thiểu giữa những thành viên ít tiềm năng nhất, Chord phải hỗ trợ. Các peer

dSIP (ví dụ nhƣ các đâu cuối mà tƣơng thích với dSIP ) phải cung cấp dịch vụ- cũng

nhƣ cơ sở hạ tầng-các chức năng bảo dƣỡng…chẳng hạn chúng phải hoạt động nhƣ

các registrar và proxy server tại cùng một thời điểm.

Nói chung, hạ tầng P2P yêu cầu các cơ chế để lƣu trữ và lấy ra các thông tin tài

nguyên. dSIP sử dụng bản tin SIP REGISTER để liên kết tên tài nguyên SIP ( ví dụ

nhƣ SIP URIs ) đến các chi tiết liên lạc cụ thể. Bởi vậy, mỗi peer và tài nguyên có một

nhận dạng duy nhất toàn cầu (Globally unique identifier_GUID) bên trong hạ tầng

Page 52: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 40

dSIP. Các tài nguyên đƣợc lƣu trữ và định vị theo thuật toán DHT ánh xạ GUID của

chúng vào GUID của một node cụ thể mà về mặt giá trị metric là gần nhất.

Để gửi một bản tin, ví dụ nhƣ thiết lập phiên,đầu tiên peer phải tìm ra vị trí tài

nguyên. dSIP sử dụng các bản tin REGISTER để phát hiện tài nguyên: một bản tin

REGISTER không cần phần mào đầu liên lạc để thực hiện định vị thiết bị đầu cuối

phía đích. Bởi vậy, các peer phải tính toán ID của tài nguyên mục tiêu dựa trên SIP

URI của mục tiêu theo thuật toán DHT. dSIP chỉ rõ một URI tài nguyên đối với mỗi tài

nguyên xác định (ví dụ SIP URI), nhƣ là < sip:[email protected]; resource-

ID=1257ebd371 > (ID của tài nguyên biểu hiện giá trị đƣợc băm của SIP URI). Peer

truy vấn bảng định tuyến của nó để chọn ra thực thể gần nhất đối với ID tài nguyên

đích (đƣợc chỉ rõ bởi giá trị metric gần nhất của thuật toán DHT ). Sau đó, bản tin

REGISTER đƣợc gửi đến các peer gần nhất. dSIP chỉ rõ 3 cơ chế có thể đối với quá

trình định tuyến: Lặp (xem hình 2.6a), đệ quy (xem hình 2.6b) và bán đệ quy. Trong cả

3 trƣờng hợp, đáp ứng cuối cùng là bản tin 200 OK với thông tin liên lạc đƣợc yêu cầu

trong trƣờng hợp thành công, hoặc một bản tin 404 Not Found nếu thiết bị đầu cuối

đích không đƣợc xác định. Với định tuyến lặp, nguồn (peer gửi) nhận các bản tin đáp

ứng 302 Redirect từ các peer đã liên lạc mà bao gồm các peer ID mà gần hơn để cố tìm

kiếm ID tài nguyên liên quan tới giá trị metric. Sau đó, nguồn lặp lại các bản tin gửi đi

để càng gần các peer cho tới khi đáp ứng là 200 OK hoặc 404 Not Found. Trong quá

trình định tuyến đệ quy, peer chuyển tiếp các bản tin trong một proxy-giống nhƣ hành

động của node đƣợc coi là gần nhất. Đáp ứng cũng đƣợc gửi tới mỗi một peer trƣớc đó

trong chuỗi chuyển tiếp. Định tuyến bán đệ quy gần nhƣ giống hệt vì các bản tin cũng

đƣợc chuyển tiếp bởi các peer của riêng chúng. Trái ngƣợc với định tuyến đệ quy, đáp

ứng đƣợc gửi trực tiếp đến các peer yêu cầu.Trên cơ sở các thông tin liên lạc nhận

đƣợc bản tin 200 OK trong trƣờng hợp phát hiện thành công, các bản tin, ví dụ nhƣ

thiết lập phiên, đƣợc gửi trực tiếp tới thiết bị đầu cuối phía đích.

Việc đăng ký ban đầu trong mạng yêu cầu 2 bƣớc liên tiếp: đăng ký cơ sở của

peer để tích hợp vào mạng P2P và việc đăng ký thông tin liên lạc SIP để sẵn sàng cho

các thiết bị đầu cuối SIP còn lại.

Page 53: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 41

(a) Định tuyến lặp (Iterative)

(b) Định tuyến đệ quy (Recursive)

Hình 2-6: Cơ chế định tuyến của dSIP

Đầu tiên, các peer gửi một bản tin REGISTER với node ID đã đƣợc tính toán

của chúng (theo thuật toán DHT) tới bootstrap peer. Bởi vậy, dSIP chỉ rõ một peer URI

mà xác định địa chỉ thực sự của node, nhƣ < sip:[email protected]; peer-ID=efdab45629

>. Bản tin REGISTER đƣợc chuyển tiếp đến peer gần nhất tới GUID của peer mới

theo số liệu metric (chuyển tiếp lặp hoặc đệ quy đƣợc sử dụng ). Sau đó, peer mới xử

lý thông tin trạng thái DHT của nó với peer gần nhất để học về các lân cận. Trong

bƣớc tiếp theo, peer mới phải đăng ký SIP URI của nó để có thể phát hiện nhƣ một

thiết bị đầu cuối SIP. Bằng với việc đăng ký ban đầu của peer, peer tính toán GUID

(SIP URI) của tài nguyên và gửi một bản tin REGISTER đến peer gần nhất. Việc đăng

ký thành công nếu peer nhận một bản tin 200 OK.

Các bản tin REGISTER cũng đƣợc sử dụng để duy trì lớp phủ. Nhƣ các bản tin

đƣợc xử lý theo chu kỳ giữa các peer để duy các quan hệ lận cận DHT .Bởi vậy, một

peer tính toán GUID của một peer nó muốn kết nối tới và gửi bản tin đến peer với

GUID gần nhất. Bản tin này đƣợc chuyển tiếp cho đến khi nó đến tới địa chỉ peer; sau

đó, cả hai peer có thể trao đổi thông tin duy trì. Bất cứ khi nào một node tham ra hay

rời khỏi mạng, các bản tin đƣợc trao đổi giữa các peer để giữ cho mạng luôn đƣợc cập

nhật. Các bản tin quản lý phiên cũng đƣợc sử dụng để duy trì lớp phủ. Bởi vậy, các bản

tin đó bao gồm thông tin về các node lân cận của peer. 2 phần mào đầu SIP mới đƣợc

giới thiệu để duy trì lớp phủ. Một DHT-Peer ID xác định GUID của peer gửi và DHT-

Link miêu tả các peer còn lại mà đƣợc xác định trong vùng lân cận.

Việc tính toán các GUID rất đắt tiền. Nhƣ vậy, tài nguyên và các peer GUID

đƣợc tính toàn và đƣợc gắn vào các bản tin nhƣ một phần của các mào đầu vì lý do

hiệu năng. Tuy nhiên, bất cứ khi nào kết quả bản tin phụ trách cấu trúc lớp phủ, các

thực thể mạng phải kiểm tra nếu các GUID đƣợc băm chính xác.

Page 54: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 42

Để kết nối các user agent SIP chuẩn tới lớp phủ, dSIP đề xuất cái đƣợc gọi là

adapter peer, nó hoạt động nhƣ các gateway giữa SIP tiêu chuẩn và lớp phủ.

2.2.2 Việc mở rộng dịch vụ định vị SIP

Bên cạnh sự thay đổi của bản thân giao thức SIP nhƣ đƣợc trình bày ở trên, một

phƣơng pháp tiếp cận khác là mở rộng dịch vụ định vị SIP. Trái ngƣợc với dịch vụ

định vị SIP tiêu chuẩn, dịch vụ định vị P2P SIP (P2P-LOC) lƣu trữ thông tin liên lạc

trong mạng P2P. Bởi vậy, giao diện dịch vụ định vị cung cấp các phƣơng tiện để đăng

ký cũng nhƣ phát hiện các thông tin liên lạc của SIP-URI. P2P-LOC có thể đƣợc tích

hợp vào SIP proxy server (P2P-PROXY) hoặc trực tiếp vào user agnet (P2P-UA).

Cách tiếp cận lai ghép các P2P-PROXY và P2P-UA có thể cũng có thể thực hiện đƣợc,

nhƣ đƣợc chỉ ra trong hình 2.7, sự tích hợp vào SIP user agent dẫn đến giảm bớt quá

trình truyền thông so với chuẩn SIP; các bản tin sẽ đƣợc giảm đi trong quá trình user

agent thực hiện xác định nội bộ các thông tin liên lạc của phía đích.

Với SIPpeer, triển khai một bộ thích ứng P2P SIP mà cho phép tham gia vào

mạng P2P mà không cần thay đổi user agent bằng cách cài đặt một P2P-PROXY .

SIPpeer hoạt động giống nhƣ một trạm host với user agent và phải đƣợc cấu hình nhƣ

một outbound proxy. Sau đó, tất cả các bản tin của user agent đƣợc gửi tự động thông

qua SIPpeer, nó cung cấp một dịch vụ định vị mở rộng dựa vào cơ sở hạ tầng

OpenDHT để đăng ký và phát hiện (OpenDHT sử dụng Bamboo, DHT hoạt động nhƣ

cơ sở hạ tầng bên dƣới dƣới).

Một phát triển khác là P2P-LOC dựa trên JXTA, một cơ sở hạ tầng P2P chung

và mở. P2P-LOC có thể đƣợc tích hợp vào một P2P-PROXY (có thể so sánh với

SIPpeer) hoặc trực tiếp vào user agent (P2P-UA). P2P-PROXY có thể hoạt động trên

các máy user agent nhằm cho phép truyền thông nội bộ với user agent để giảm lƣu

lƣợng mạng.

Trong cả hai hệ thống, các bản tin REGISTER đƣa đến các tài nguyên công

cộng trong mạng P2P riêng biệt. Các thông tin liên lạc (ví dụ địa chỉ IP và chỉ số cổng

port) đƣợc lƣu trữ theo SIP URI tƣơng ứng, có vai trò nhƣ là chìa khóa. Các bản tin

SIP, mà yêu cầu định tuyến, dẫn tới quá trình khám phá mạng P2P: các tài nguyên

tƣơng ứng với SIP URI nhƣ là chìa khóa phải đƣợc phát hiện. Sau đó, thông tin liên lạc

đƣợc sử dụng để gửi trực tiếp bản tin SIP tới đích (hình 2-7).

Tuy nhiên, cũng có nhiều sự khác nhau giữa cả hai hệ thống. Trái ngƣợc với

SIPpeer dựa trên OpenDHT, P2P-LOC sử dụng JXTA. JXTA cung cấp khả năng để

tích hợp các kỹ thuật P2P một cách linh hoạt để hỗ trợ nhiều kịch bản ứng dụng. Ví dụ,

Page 55: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 43

trong một vài kịch bản về di dộng nó không khả thi khi sử dụng DHTs bởi vì phần mào

đầu không đổi. Hơn nữa, tích hợp dịch vụ định vị vào khái niêm P2P-LOC, đặc biệt

quan trọng cho các mạng động. Bởi vậy, P2P SIP proxy có thể làm sáng tỏ phƣơng

pháp SIP mở rộng . Bản tin SIP chuẩn REGISTER với liên kết tùy ý đƣợc dùng cho

việc đăng ký dịch vụ. Theo cách đó, nó có thể đƣợc kết hợp với đăng ký SIP chuẩn,dẫn

đến giảm lƣu lƣợng mạng. Một bản tin OPTIONS với một truy vấn nhƣ một liên kết

có thể sử dụng để phát hiện dịch vụ. Cả hai yêu cầu đều dẫn tới P2P-LOC lƣu trữ hoặc

phát hiện thông tin dịch vụ bên trong mạng JXTA.

e

Hình 2-7: Lưu lượng bản tin của quá trình thiết lập phiên P2P SIP với dịch vụ định vị

mở rộng.

2.3 KIẾN TRÚC MẠNG P2P SIP PHÁT TRIỂN SỚM

2.3.1 Kiến trúc SOSIMPLE P2P SIP

2.3.1.1 Cấu trúc và các bản tin

SOSIMPLE sử dụng P2P để phân tán hệ thống truyền thông SIP/SIMPLE.

Trong SOSIMPLE, không còn những server tập trung và các node truyền thông trực

tiếp với nhau. Các peer kết nối tới các peer khác trong mạng phủ và sử dụng chính các

node đó làm điểm đến cho các bản tin SIP. Node hoạt động đồng thời nhƣ là các UA

và các proxy và thay thế chức năng SIP registrar và proxy. Mỗi node chịu trách nhiệm

cho một vài vai trò đối với một vài vị trí trong lớp phủ.

Trong SOSIMPLE, các node đƣợc tổ chức trong một DHT dựa trên giao thức

Chord. Mỗi node đƣợc gán một Node-ID đƣợc tạo bằng cách băm (sử dụng thuật toán

băm bảo mật 1-SHA1) địa chỉ IP thực tế (đƣợc tìm thấy bằng cách sử dụng một cơ chế

Page 56: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 44

nhƣ STUN, TURN nếu node bị dấu đằng sau NAT) và gắn với một cổng. Sử dụng

cùng một thuật toán đƣợc sử dụng bởi Chord để duy trì mạng phủ SOSIMPLE, và các

bản tin SIP đƣợc dùng để thực hiện các hoạt động DHT. Hoạt động của Chord đƣợc sử

dụng trong SOSIMLE lƣu dữ liệu không chỉ tại node mà dữ liệu băm, mà còn tại k

node tiếp theo. Do đó, sau khi băm username của họ vào một node Chord, UA gửi

một bản tin SIP REGISTER tới node và k phần tử tiếp theo của nó, điều đó có nghĩa là

các tài nguyên, bao gồm thông tin đăng ký của ngƣời sử dụng, đƣợc lƣu trữ trên node

chịu trách nhiệm cho một tài nguyên thực tế cũng nhƣ k node tiếp theo.

Các node SOSIMLE duy trì một số các đầu vào bảng finger table để định tuyến

và các đầu vào nạp trƣớc để liên lạc với danh sách những ngƣời bạn than của ngƣời sử

dụng cũng nhƣ lƣu giữ những node đã liên lạc trƣớc đó để sử dụng trong tƣơng lai.

Tất cả các bản tin cho việc duy trì DHT, đăng ký ngƣời dùng, định vị các tài nguyên,

và thiết lập phiên là các bản tin SIP. Vì SOSIMPLE cần chức năng P2P, SIP đƣợc thiết

kế không phải để hỗ trợ P2P, SIP có thể đƣợc mở rộng bởi các chuyên viên thiết kế.

Chúng ta không cần một phƣơng pháp mới để SIP có thể thực hiện chức năng P2P mà

chỉ cần định nghĩa một số mào đầu SIP mới. Việc định nghĩa các mào đầu mới là một

hình thức phổ biến của việc mở rộng SIP nhằm hỗ trợ chức năng mới trong khi vẫn

duy trì khả năng tƣơng thích với các ứng dụng đang tồn tài.

SOSIMLE sử dụng bản tin SIP REGISTER để chuyển thông tin lớp phủ giữa

các node. Trong SOSIMPLE, việc đăng ký ngƣời sử dụng đề cập tới cách sử dụng

truyền thống cho những ngƣời sử dụng đăng ký, trong khi việc đăng ký node đề cập

tới REGISTER cho các hoạt động DHT, nhƣ tham ra, rời khỏi hay duy trì lớp phủ.

2.3.1.2 Hoạt động của Node (Node-level Operations)

Khi một Node mới muốn tham ra vào SOSIMPLE thì nó phải trao đổi một số

bản tin REGISTER, Node sử dụng địa chỉ IP của mình để tính toán Node-ID. Sau khi

node mới đã tham ra lớp phủ, nó có trách nhiệm lƣu trữ thông tin (đăng ký ngƣời

dung) liên kết với các phần của lớp phủ ánh xạ tới tính toán Node-ID. Node tham ra

phải xác định vị trí node hiện đang chịu trách nhiệm cho khu vực, chèn nó vào trong

lớp phủ, và chuyển giao các thông tin cho khu vực.

Một ví dụ về việc tham ra của một node trong hình 2-8. Khi một node mới

muốn tham ra lớp phủ thì đầu tiên nó phải xác định một vài node sẵn có trong lớp phủ,

đƣợc đề xuất nhƣ là bootstrap node – node khởi động. Hiện tại node này đƣợc xác định

qua các cơ chế out-of-band.

Page 57: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 45

Hình 2-8: Ví dụ một node mới tham ra SOSIMPLE

Hình 2-8 minh họa node mới tham gia SOSIMPLE nhƣ thế nào. Node A là node

muốn tham ra sẽ tính toán node-ID của mình, trong ví dụ là 842, và gửi ID đó trong

một bản tin REGISTER tới Bootstrap node, có node-ID là 020 (1). Giả sử rằng,

Bootstrap node không phải là node hiện đang chịu trách nhiệm cho khu vực này. Vì

vậy Boostrap node sẽ phản hồi trong đó có chứa thông tin về các node mà theo nó là

gần nhất với vị trí mà node A sẽ đƣợc đặt vào lớp phủ, trong trƣờng hợp này là node B,

với node-ID là 345. Thông tin này đƣợc truyền trở lại trong phần tiêu đề mới đƣợc mở

rộng bởi SOSIMPLE, bên trong bản tin phản hồi SIP 302 tạm thời di chuyển (2). Sau

đó node A sẽ lặp lại quá trình này, sử dụng node gần nhất nhƣ bootstrap node mới (3-

4), cho đến khi nó tìm thấy node C, mà hiện đang chịu trách nhiệm duy trì phần thích

hợp trong lớp phủ. Node C với Node-ID 850. Node C phản hồi lại bằng bản tin SIP

200 OK cho biết thông tin về hang xóm gần đó trong phần tiêu đề (5-6), nhƣ vậy cho

phép node tham ra chèn nó vào lớp phủ.

Ngoài ra, node mới sẽ gửi các bản tin tới các node khác trong lớp phủ để cập

nhật bảng finger của chúng. Tại thời điểm này, node đã đƣợc tham ra lớp phủ và việc

đăng ký của node đã hoàn tất.

2.3.1.3 Hoạt động của người sử dụng (User Operations)

Việc đăng ký ngƣời dùng và định vị tài nguyên đƣợc phân tán trong

SOSIMPLE. Để đăng ký, hoặc để liên lạc với một ngƣời sử dụng khác, node hiện đang

chịu trách nhiệm lƣu trữ thông tin của ngƣời sử dụng phải đƣợc xác định. Chúng ta sẽ

thảo luận về việc đăng ký và thiết lập một phiên riêng, nhƣng đầu tiên sẽ là quá trình

định vị tài nguyên. Minh họa về quá trình định vị tài nguyên đƣợc chỉ ra trong hình

Page 58: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 46

2-9.

Hình 2-9: Alice xác định vị trí người sử dụng Bob và thiết lập một phiên truyền thông.

Khi một node mong muốn tìm thấy node chịu trách nhiệm về một ngƣời dùng

thực tế - bản thân chúng hoặc ngƣời dùng khác mà chúng muốn liên lạc - chúng bắt

đầu bằng việc băm tên ngƣời dùng để tạo ra một Resource-ID. Bởi vì node ngƣời sử

dụng đã đƣợc xác định trong lớp phủ nên node có một số lối vào bảng finger table trỏ

tới các node bên trong lớp phủ.

Trong ví dụ này Alice cố gắng tìm kiếm một tài nguyên (trong ví dụ là Bob).

Đầu tiên, node Alice băm tên ngƣời dùng Bob để tạo ra Resource-ID. Sau khi nhận

đƣợc resource-ID, node của Alice tìm kiếm Node-ID gần với resource-ID của Bob

trong bảng finger table của nó và tìm thấy node A. Node Alice gửi một bản tin tới node

A (1). Loại bản tin phụ thuộc vào lý do tại sao Alice muốn xác định tài nguyên. Vì

Node A không phải node chịu trách nhiệm đối với Resource-ID, vì vậy nó gửi lại bản

tin SIP 302 Moved Temporarily để trả lời, cho biết node mà nó nghĩ là gần nhất đó là

node B, đƣợc tìm thấy trong bảng finger của nó, trong phần tiêu đề (2). Node Alice thử

lại với node B và một lần nữa nhận đƣợc một bản tin trả lời là hãy thử lại với một node

khác, trong trƣờng hợp này là node C (3-4). Cuối cùng, node Alice thử với node C,

node C hiện chịu trách nhiệm về tài nguyên (5). Kết quả của những yêu cầu phụ thuộc

vào lý do tại sao Alice lại muốn xác định tài nguyên, vậy bây giờ chúng ta sẽ khám

phá nhứng lựa chọn đó.

Page 59: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 47

Nếu Alice đã đăng ký mình nhƣ một ngƣời sử dụng bên trong lớp, các bản tin

từ UA của Alice gửi (1,3,5) là loại REGISTER. Khi node C nhận đƣợc các bản tin này,

nó nhận ra rằng nó có trách nhiệm lƣu trữ các đăng ký thay mặt Alice. Node C đƣa một

ánh xạ giữa username của Alice và địa chỉ IP của cô ấy vào bảng đăng ký của nó và trả

lời node Alice bản tin 200 OK (6). Tại thời điểm này, Alice đã đăng ký đƣợc với hệ

thống.

Trƣờng hợp 2 nếu Alice đang cố gắng gọi Bob, các bản tin mà UA của Alice

gửi là các bản tin SIP INVITE để thiết lập một cuộc gọi VoIP hay các bản tin SIP

MESSAGE có chứa dữ liệu IM (instant messaging). Khi các bản tin này đến node

mong muốn, trong trƣờng hợp này là node C, node C nhìn vào bảng đăng ký của nó và

thấy rằng nó có trách nhiệm với đăng ký của Bob, node C tìm xem đăng ký của Bob

hiện có đang tồn tại không. Nếu không, bản tin 404 Not Found đƣợc trả về (6), chỉ ra

rằng ngƣời dùng không có trong hệ thống. Nếu Bob đã đăng ký, Node C gửi bản tin

302 Moved Temporarily trả lời, cung cấp một liên lạc trực tiếp cho Bob (6).

Sau khi Alice có địa chỉ IP của UA của Bob, một cuộc gọi giữa 2 UA có thể

đƣợc thiết lập trực tiếp giữa 2 node sử dụng cơ chế SIP thông thƣờng không lien quan

tới lớp phủ (7). Node Alice lƣu trữ thông tin nhận đƣợc từ node C và có thể sử dụng

cho các giao tiếp với Bob trong tƣơng lai. Trừ khi Bob hoặc Alice thoát khỏi hệ thống

hay di chuyển node của chúng, có thể thúc đẩy một tìm kiếm mới, lớp phủ không tham

ra vào bất kỳ một bản tin hay một cuộc hội thoại giữa Alice và Bob trong tƣơng lai.

Khi một P2P UA khởi động, danh sách liên lạc hay danh sách bạn thân của

ngƣời dùng đƣợc tra cứu. Cơ chế SIP SUBCRIBE/NOTIFY (sử dụng co chế P2P để

định vị tài nguyên) đƣợc sử dụng để cố gắng xác minh các thuê bao với những ngƣời

sử dụng. Thuê bao theo dõi mức độ sẵn sàng của bàn bè. Nếu bàn bè không kết nối

đƣợc, thuê bao sẽ thử lại sau. Địa chỉ của node chịu trách nhiệm về thông tin ngƣời

dùng cũng sẽ đƣợc thêm vào bảng finger table của node, nhƣ đƣợc mô tả bên trên.

Danh sách bạn thân đƣợc lƣu trữ nhƣ một tệp tin đƣợc mật mã hóa bên trong lớp phủ.

2.3.2 Kiến trúc P2P cho hệ thống điện thoại IP dựa trên SIP

2.3.2.1 Kiến trúc

Kiến trúc cho một hệ thống điện thoại IP dựa trên P2P SIP đƣợc chỉ ra trong

hình 2-10 . Một vài node với dung lƣợng (băng thông, CPU, bộ nhớ) và độ khả dụng

(thời gian hoạt động, địa chỉ IP công cộng) cao tạo thành các super-node và tạo thành

DHT, trong khi các node khác đƣợc gắn vào một hoặc nhiều super-node và không trở

thành một phần của DHT tạo thành các node gốc.

Page 60: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 48

Hình 2-10 Kiến trúc P2P cho hệ thống điện thoại IP dựa trên SIP

Hình 2-11chỉ ra biểu đồ hình khối của các thành phần trong đề xuất của node

P2P SIP. Khi node khởi động và ngƣời sử dụng đăng nhập vào với nhận dạng của họ,

module khám phá đƣợc kích hoạt để bắt đầu NAT (Network Address Translation) và

phát hiện tƣờng lửa, phát hiện peer, và đăng ký SIP. Đăng ký nhóm SIP, địa chỉ peer

đƣợc lƣu trữ từ chu trình khởi động lần cuối, và địa chỉ tự khởi động đƣợc cấu hình

trƣớc phải đƣợc sử dụng để phát hiện ra tập hợp node ban đầu.

Hình 2-11: Sơ đồ khối của một node P2P-SIP

Page 61: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 49

Module giao diện ngƣời sử dụng theo dõi danh sách bạn bè của ngƣời sử dụng

và gọi ra Module định vị ngƣời sử dụng để xác định vị trí những ngƣời bạn đó. Định

vị ngƣời sử dụng thu đƣợc bằng cách sử dụng module SIP hay Module DHT. Module

DHT duy trì thông tin về peer và thực hiện các hoạt động DHT.

Trong hệ thống này, SIP đƣợc sử dụng nhƣ giao thức nằm dƣới để xác định vị

trí ngƣời sử dụng hay các node, gia nhập DHT, đăng ký ngƣời sử dụng, thiết lập cuộc

gọi và tin nhắn tức thì IM. Khi một ngƣời sử dụng đƣợc định vị, thiết lập cuộc gọi hay

các tin nhắn nhanh có thể đƣợc gửi trực tiếp thông qua SIP module tới điện thoại của

ngƣời sử dụng. khi một super-node tắt hay bị lỗi, các đăng ký sẽ đƣợc chuyển tới các

super-node khác trong DHT. Các chức năng SIP khác nhƣ điều khiển cuộc gọi nhóm 3

(third-party-call control) và chuyển cuộc gọi (call-trasfer), có thể đƣợc thực hiện đồng

thời. Con đƣờng truyền thông (thiết bị truyền thông, codec và phƣơng tiện vận chuyển)

độc lập với hoạt động P2P-SIP. Một vài DHT (ví dụ mạng khu vực điều khiển CAN )

có thể cho phép tìm kiếm song song tới nhiều peer. Trong trƣờng hợp này, super-node

có thể hoạt động nhƣ một back-to-back user agent (B2BUA) và truyền bản tin SIP tới

các peer lân cận.

Trong triển khai thực tế, nó có thể hữu ích để cho phép nhiều mạng P2P-SIP

liên kết lại. Kiến trúc lai cho phép cả các mạng P2P-SIP và hạ tầng SIP dựa trên server

cùng tồn tại. Có 2 cách tiếp cận để thi hành thiết kế này: đăng ký chéo tất cả những

ngƣời sử dụng của một mạng với tất cả các mạng còn lại,hoặc định vị ngƣời sử dụng

trong các mạng khác trong quá trình thiết lập cuộc gọi. Phƣơng pháp đầu tiên thích

hợp cho một số ít các mạng P2P đƣợc biết đến, nơi mà mỗi mạng P2P SIP đƣợc đại

diện bởi một tên miền. Điều này cũng giống nhƣ mạng SIP dựa trên server nơi mà tên

miền giải quyết cho một hay nhiều node tự khởi động trong mạng. Phƣơng pháp thứ

hai có thể đƣợc thực hiện bằng cách sử dụng một dịch vụ đặt tên toàn cầu giống nhƣ

hệ thống tên miền (DNS), hoặc một mạng P2P SIP phân cấp. P2P SIP đƣợc sử dụng

thay cho DNS để giải quyết tên miền. Ví dụ, một tổ chức cá nhân lớn có thể có một

mạng P2P SIP nội hạt mà đƣợc kết nối tới mạng P2P SIP toàn cầu nhƣ đƣợc chỉ ra

trong hình 2.10. DHT tên miền nội hạt cụ thể đại diện các node server cũng có thể tìm

thấy trong DHT toàn cầu, ví dụ, phím private.com ánh xạ tới các node W và V trong

DHT toàn cầu. Bất kỳ node nào trong DHT tên miền cụ thể có thể tìm thấy DHT toàn

cầu, và bất kỳ node nào trong DHT toàn cầu có thể tìm thấy DHT tên miền cụ thể

thông qua các node server đại diên trong miền đó.

Page 62: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 50

Kiến trúc lai cho phép ngƣời sử dụng đăng ký với máy chủ SIP cũng nhƣ mạng

P2P SIP của nhà cung cấp của họ. Thiết lập cuộc gọi đƣợc gửi tới đích SIP nếu đƣợc

giair quyết thông qua DNS, cũng nhƣ tới mạng P2P SIP.

Toàn cầu

(pubp2psip.net)

Private.net

Example.net

Corporation.com

Dựa trên máy chủ

O P

R

S

T

I

K

M JV

Z

W

YX

A B

D C

Hình 2-12: Ví dụ về hệ thống lai

2.3.2.2 Các đề xuất trong kiến trúc P2P-SIP

2.3.2.2.1 SIP sử dụng P2P

Một lựa chọn của kiến trúc P2P-SIP là SIP sử dụng P2P nhƣ minh họa trong

Hình 2.11. Trong thiết kế này, giao thức P2P đƣợc sử dụng để thực hiện dịch vụ định

vị SIP. Thay vì sử dụng các bản tin SIP nhƣ bản tin REGISTER, máy trạm P2P sẽ hoạt

động nhƣ một tác nhân ngƣời dùng SIP, chèn trực tiếp URI hay URL (bộ định vị tài

nguyên đồng nhất - Uniform Resource Locator) của nó vào DHT và nó đƣợc lƣu trữ

nhƣ khóa tìm kiếm đặc biệt. Ngoài ra, để thực hiện dịch vụ định vị khi SIP proxy hay

máy chủ trực tiếp nhận thông tin đặc biệt để chuyển tiếp bản tin tới tác nhân ngƣời

dùng đích, các giao thức P2P có thể cung cấp nhóm các chức năng cần thiết. Chúng

bao gồm tìm kiếm khóa tìm kiếm trong DHT, cập nhập và công bố thông tin dữ liệu

liên quan đến khóa tìm kiếm này,… Kết hợp với những chức năng này, dịch vụ định vị

có thể đƣợc thực hiện với các giao thức P2P trong thiết kế này.

Page 63: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 51

Mạng P2P

Tìm kiếm Chèn

Mời: sip: [email protected]

Alice

Sip:[email protected]

Hình 2-13: Khái niệm SIP using P2P

Kiến trúc này có ý nghĩa lớn đối với dịch vụ định vị phân phối, do dó nó rất

hiệu quả trong việc tìm kiếm vị trí tài nguyên mạng. Tuy nhiên, khi thực thi kiến trúc

này cần xem xét một số vấn đề. Thứ nhất, các node đƣợc thiết lập trong mạng theo

kiến trúc có thể không làm việc với NAT Traversal tại cùng một thời điểm. Ngoài ra,

giao thức P2P đƣợc sử dụng trong kiến trúc này có thể không xử lý NAT Traversal tốt

lắm.

Các node P2P tạo thành mạng P2P và cung cấp những dịch vụ P2P cho các thiết

bị đầu cuối truy nhập bên ngoài thông qua giao diện P2P. Các thiết bị đầu cuối truy

nhập mạng P2P sử dụng các bản tin sở hữu riêng P2P thông qua giao diện riêng của

P2P. Ngoài ra, ở đó tồn tại một mô đun chuyển đổi giao thức trong các thiết bị đầu

cuối để thực hiện chuyển đổi giữa giao thức SIP và giao thức P2P. Cấu trúc hệ thống

đƣợc chỉ ra trong Hình 2.14.

Mạng P2P

Giao diện P2P

SIP P2P

SIP UA

P2P Node

Thiết bị đầu cuối

Hình 2-14: Cấu trúc hệ thống SIP using P2P

Page 64: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 52

Giao diện giữa thiết bị đầu cuối và node P2P là một giao diện sở hữu phụ thuộc

vào thuật toán P2P đƣợc lựa chọn. Để hỗ trợ các thuật toán P2P khác nhau, nó phải

thực hiện sự thi khác nhau. Ngoài ra, các chức năng nhận thực, cấp phép, thanh toán

(AAA - Authentication, Authorization, Accounting) đối với các những thiết bị đầu

cuối truy nhập khó đối thực thi trong hệ thống khi các thiết bị đầu cuối muốn sử dụng

các dịch vụ đƣợc cung cấp bởi mạng P2P do sự đặc trƣng phân tán của P2P. Do đó,

các ISP và các nhà khai thác viễn thông có thể không đƣợc lợi ích từ hệ thống này.

Bên cạnh đó, việc thực hiện hệ thống cũng gặp nhiều khó khăn. Những khó khăn này

tập trung vào việc thiết kế và thực thi giao diện truy nhập P2P và giao thức chuyển đổi

giao diện giữa giao thức SIP và các thuật toán P2P. Việc ánh xạ các bản tin SIP tiêu

chuẩn và cú pháp sang mạng P2P thƣờng là một thách thức lớn và ngƣợc lại. Ngoài ra,

việc thiết kế kiến trúc hệ thống và xác định luồng bản tin hệ thống nhƣ thế nào cũng

cần nhiều thời gian để xem xét. Vì những lý do này, cho tới nay hầu hết các thực hiện

P2P-SIP hiện tại đều dựa trên “P2P over SIP”, chứ không phải “SIP using P2P”.

2.3.2.2.2 P2P over SIP

Hình 2.13 đƣa ra một kiến trúc P2P-SIP khác là P2P over SIP, trong đó việc

thực thi P2P sẽ sử dụng bản tin SIP. Cụ thể, các bản tin SIP nhƣ REGISTER, INVITE

vẫn đƣợc sử dụng. Kiến trúc này cho phép có thể thay đổi phần tiêu đề của bản tin SIP

ban đầu để thực hiện nhiều chức năng nhƣ chỉ thị node, tham gia hay rời khỏi mạng

chồng. Ví dụ, nó có thể sử dụng tiêu để "Require" cho bản tin OPTIONS hay

REGISTER để mở rộng bản tin SIP ban đầu.

Thiết kế này có ƣu điểm là dễ dàng phát triển trong tƣơng lai do SIP đã hoàn

thiện, việc sử dụng SIP nhƣ là nền tảng để truyền tải lƣu lƣợng P2P ở trên sẽ không tốn

thêm nhiều chi phí hay đòi hỏi nhiều thay đổi của SIP. Do đó, phần tiếp theo sẽ nghiên

cứu chi tiết về kiến trúc P2P-SIP này.

Mạng chồng

P2P

Alice

Sip: [email protected]

Đăng kýMời Alice

Hình 2-15: Khái niệm P2P over SIP

Page 65: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 53

2.3.2.3 Kiến trúc mạng chồng P2P SIP

2.3.2.3.1 Kiến trúc mạng chồng P2P SIP

Kiến trúc P2P-SIP này định nghĩa SIP nhƣ là một giao thức ở dƣới dành để định

vị trí NSD, đăng ký NSD, thiết lập cuộc gọi và bản tin tức thì. Ngoài ra, nó sử dụng

DHT để cung cấp thông tin về vị trí NSD cho mọi node trong mạng chồng. Giống nhƣ

mạng P2P có cấu trúc, các node trong kiến trúc P2P-SIP này gồm các node gốc và siêu

node. Các node có địa chỉ công khai và dung lƣợng lớn là đủ điều kiện để trở thành

siêu node. Các node khác sẽ là node thƣờng. Các node trong DHT có thể sử dụng các

phƣơng thức tìm, tham gia và rời mạng. Ngoài ra, trong kiến trúc này, các node còn sử

dụng bản tin SIP để liên lạc nhƣ REGISTER, OPTIONS, INVITE, REFER, vv...

Các node này (node thƣờng và siêu node) còn đƣợc gọi là peer P2P-SIP. Các

peer trong mạng chồng hoạt động dựa trên thuật toán dữ liệu phân tán DHT. Thuật

toán này cho phép dữ liệu đƣợc lƣu giữ trên các peer và khôi phục theo một phƣơng

pháp hiệu quả. Nó cũng đảm bảo việc sao lƣu một mục của dữ liệu đƣợc lƣu trên nhiều

hơn một peer, bởi vậy việc mất dữ liệu của một peer sẽ không làm mất dữ liệu của

mạng chồng

Nhƣ vậy, P2PSIP thay thế mô hình SIP truyền thống bằng cách sử dụng một

Distributed Hash Table (DHT overlay) để phân phối cơ sở dữ liệu này và thay thế mô

hình SIP truyền thống bằng mô hình mới dựa trên DHT

Sơ đồ khối các thành phần của một node P2PSIP đƣợc minh họa ở hình vẽ dƣới đây:

Phát hiện tƣờng

Lửa và NATSIP RTP/ RTCP

Bộ mã hòa và

Giải mã

(Codec)

Thiết bị

Audio

DHT logic

Định vị ngƣời dùng

(User location)

Giao diện ngƣời sử dụng

(danh sách bạn bè,ngƣời thân…)

Đăng ký đi ra ngoài

(Outgoing Registration)

Khởi động

Giao diện khớp nối (Socket interface)

Hình 2-16: Sơ đồ khối một node P2PSIP

Page 66: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 54

Registration: Khi một node bắt đầu khởi động và NSD đăng nhập thông qua quá trình

nhận dạng của mình, modul resgistration đƣợc kích hoạt để khởi tạo tƣờng lửa và phát

hiện NAT, phát hiện peer và đăng ký SIP.

Firewall and NAT detection: Phát hiện tƣờng lửa và NAT

Giao diện NSD (User interface): Module này tƣơng tác với NSD, duy trì danh bạ và

gọi module User location để định vị trí của những ngƣời trong danh bạ

Vị trí NSD (User location): Module này có thể gửi yêu cầu tới module SIP hoặc nếu

đây là một siêu node module DHT có thể xác định NSD.

DHT: Module này đƣợc sử dụng khi node là một siêu node để duy trì thông tin các

peer DHT và thực hiện DHT logic.

SIP: SIP đƣợc sử dụng nhƣ giao thức nằm dƣới để xác định NSD khác, đăng ký NSD,

thiết lập cuộc gọi và các bản tin tức thì. Một khi đã xác định đƣợc vị trí của NSD, quá

trình thiết lập cuộc gọi hoặc các bản tin tức thì có thể gửi trực tiếp qua module SIP.

API cho phép gửi và nhận các yêu cầu và đáp ứng SIP, duy trì trạng thái cuộc gọi và

đăng ký.

Media path: Đƣờng truyền thông (thiết bị âm thanh, bộ mã hóa và truyền tải) là tƣơng

đối độc lập với hoạt động của P2P-SIP. Module DHT sử dụng các bản tin SIP để liên

lạc với các node ngang hàng khác

2.3.2.3.2 Các hoạt động của Node

Các hoạt động của một node trong mạng gồm 3 thủ tục: gia nhập mạng, rời

mạng và khi một node gặp phải sự cố (failure) trong mạng

Một node gia nhập mạng

Quá trình một node gia nhập mạng đƣợc minh họa nhƣ hình 2-17.

Hình 2-17: Quá trình một node gia nhập mạng

Page 67: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 55

Khi một node gia nhập mạng, thông qua SIP URL nhƣ sip:[email protected],

node sẽ tự đăng ký bằng cách sử dụng đồng thời phƣơng pháp SIP REGISTER truyền

thống và kỹ thuật P2P. Theo phƣơng pháp SIP REGISTER truyền thống, node sử dụng

DNS tìm server SIP thích hợp để đăng ký nó với SIP Registrar bằng bản tin

REGISTER. Sau đó, SIP Registrar (columbia.edu) sẽ tiếp nhận đăng ký này để cập

nhập thông tin về vị trí của node.

Ngoài ra, node còn sử dụng kỹ thuật P2P để đăng ký. Khi đó, node sẽ sử dụng phƣơng

pháp phát đa điểm để yêu cầu REGISTER với các giá trị thời gian tồn tại trong mạng

TTL hạn chế tìm siêu node gần nhất để tham gia vào mạng chồng P2P. Nếu có sẵn các

địa chỉ siêu node hay bất kỳ peer nào lƣu trong bộ nhớ của node, thì nó sẽ ƣu tiên liên

lạc với các địa chỉ này trƣớc mỗi khi nó gia nhập lại.

Một node rời mạng:

Quá trình một node rời khỏi mạng đƣợc thể hiện qua hình 2-18.

Hình 2-18: Quá trình một node rời mạng

Khi một node rời mạng cần xem xét xem đây là node thƣờng hay siêu node.

Trong trƣờng hợp node thƣờng, nó chỉ cần gửi một bản tin un-REGISTER tới siêu

node đƣợc kết nối với nó để thông báo rằng nó sẽ rời mạng. Sau đó, siêu node chịu

trách nhiệm sẽ truyền bá thông tin này tới các siêu node có liên quan trong DHT mà

lƣu trữ node thƣờng đã rời mạng (left ordinary node) theo một khóa. Còn nếu node là

siêu node thì để rời mạng, nó cần sử dụng bản tin REGISTER để truyền dữ liệu của tất

Page 68: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 56

cả các node thƣờng mà nó chịu trách nhiệm tới những siêu node khác trong DHT.

Theo cách này, thông tin của các node thƣờng đƣợc gán với siêu node rời mạng đó sẽ

không bị mất. Sau đó, những node thƣờng này sẽ nhận thấy chúng không thể kết nối

tới siêu node trƣớc đó và chúng bị đƣợc chuyển tới các siêu node mới khi chúng làm

mới đăng ký trong lần tiếp theo.

Một node gặp phải sự cố:

Khi một node bất ngờ gặp phải sự cố trong mạng, những hoạt động sau sẽ phụ

thuộc vào node đó là node thƣờng hay siêu node.

Nếu node là node thƣờng, chỉ siêu node mà nó kết nối tới sẽ biết sự cố của nó do node

bị sự cố sẽ thôi làm mới đăng ký. Sau đó, siêu node sẽ gửi một bản tin OPTIONS đến

node này và theo dõi đáp ứng để xác nhận sự cố này.

Nếu node bị sự cố là một siêu node, các node ở gần nó trong DHT sẽ phát hiện

lỗi của nó và cố gắng chịu trách nhiệm về những node thƣờng của nó. Tuy nhiên, nếu

các node gốc không làm mới bản tin REGISTER tới một siêu node mới hoặc siêu node

mới không biết thông tin của chúng, kết nối của các node thƣờng có thể bị mất sau khi

siêu node ban đầu của chúng gặp sự cố.

Hình 2-19: Siêu node trong DHT gặp sự cố

2.3.2.3.3 Quá trình thiết lập một phiên làm việc

Phần này sẽ mô tả ngắn gọn phƣơng thức NSD thiết lập một cuộc gọi và đạt

đƣợc thông tin về sự có mặt (presence).

Quá trình một NSD thiết lập một cuộc gọi : đƣợc minh họa qua hình 2-20.

Page 69: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 57

Hình 2-20: Thiết lập cuộc gọi trong mạng chồng P2P-SIP

Trong mạng SIP truyền thống, để thiết lập cuộc gọi, ngƣời gọi gửi bản tin

INVITE để liên lạc với ngƣời đƣợc gọi nhằm khởi tạo phiên. Tuy nhiên, trong mạng

chồng P2P-SIP này, sự khác nhau đối với quá trình này là ngƣời gọi cần tìm vị trí của

node đƣợc gọi với bản tin INVITE. Khi bắt đầu thực hiện cuộc gọi, ngƣời gọi sẽ kiểm

tra địa chỉ của ngƣời đƣợc gọi nếu nó mới đƣợc sử dụng gần đây. Nếu địa chỉ đƣợc lƣu

trong thiết bị tại chỗ, ngƣời gọi sẽ sử dụng nó đầu tiên. Tuy nhiên, client sử dụng địa

chỉ này có thể không đáp ứng do vắng mặt, và sau đó địa chỉ này sẽ đƣợc xóa khỏi

danh sách đƣợc lƣu. Trong trƣờng hợp đó, ngƣời gọi không thể tìm địa chỉ đƣợc lƣu

của ngƣời đƣợc gọi, bởi vậy ngƣời gọi sẽ bắt đầu tìm kiếm đồng thời dựa trên SIP

bằng cách hỏi DNS và dựa trên P2P (Hình 2.21).

Khi nó sử dụng tìm kiếm dựa trên P2P, mạng chồng sẽ sử dụng DHT để định vị

trí node của ngƣời đƣợc gọi đích. Đầu tiên, node thƣờng gửi bản tin INVITE hoặc

MESSAGE tới siêu node gắn với nó mà hoạt động giống nhƣ một SIP proxy server, nó

tiếp nhận các yêu cầu, quyết định nơi gửi đến và chuyển chúng sang server kế tiếp theo

từng chặng (1). Dựa trên khóa trong DHT, siêu node sẽ xác định đƣợc vị trí node đích

cần tìm. Sau khi ánh xạ tới node đích thành công, siêu node chịu trách nhiệm về ngƣời

gọi sẽ hoạt động nhƣ SIP proxy server hoặc redirect server để chuyển tiếp bản tin tới

ngƣời đƣợc gọi (2). Việc quyết định siêu node này hoạt động nhƣ proxy server hay

redirect server phụ thuộc vào node của ngƣời gọi có nằm sau tƣờng lửa hoặc NAT hay

không. Nếu ngƣời gọi là node thƣờng nằm sau tƣờng lửa hoặc NAT, siêu node sẽ hoạt

Page 70: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 58

động giống nhƣ SIP proxy server. Nếu không, nó hoạt động nhƣ một redirect server để

gửi lại bản tin INVITE tới chặng kế tiếp. Sau đó, phiên sẽ đƣợc khởi tạo và NSD có

thể bắt đầu truyền dẫn đa phƣơng tiện từ đầu cuối tới đầu cuối giống nhƣ mạng SIP

truyền thống (3).

44

2

58

2439

34

10

15

20

Đƣờng PP2

(1)

(2)

(3)

Home.com

192.0.2.2

[email protected]

16

[email protected]

[email protected]

62

35

37

Đƣờng SIP

DNS để đổi home.com thành

địa chỉ IP của máy chủ

[email protected]

Hình 2-21: Định vị trí của NSD nhờ tìm kiếm dựa trên SIP và P2P

Các chức năng SIP khác nhƣ điều khiển cuộc gọi ba bên (third-party-call

control) hay chuyển tiếp cuộc gọi (call-transfer) cũng đƣợc thực hiện tƣơng tự.

Dịch vụ presence

Giống nhƣ SIP có thể thực hiện dịch vụ presence (sự có mặt) cho NSD, trong

mạng chồng P2P-SIP, NSD cũng có thể đạt đƣợc trạng thái về sự có mặt của những

NSD khác. NSD có thể có một danh sách bạn cùng với sự nhận dạng của họ. Theo

thông tin định dạng của NSD, danh sách bạn này có thể đƣợc mật mã hóa và đƣợc lƣu

trữ trong các node trung gian trong mạng P2PSIP. Mỗi khi NSD đăng nhập với sự

nhận dạng của mình, NSD sẽ hoạt động giống nhƣ một node tham gia vào mạng

chồng, anh ta có thể tìm nạp thông tin định dạng của mình và bắt đầu định vị trí của

Page 71: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 2. PEER-TO-PEER SIP

Đinh Thị Phương, D05VT1 Page 59

những NSD nằm trong danh sách bạn. Sau đó, địa chỉ IP của tất cả các ngƣời bạn sẽ

đƣợc lƣu để sử dụng trong tƣơng lai.

Ngoài ra, nếu sử dụng kết hợp kết hợp các bản tin SUBSCRIBE và NOTIFY SIP với

tìm kiếm dựa trên P2P hoặc tìm kiếm dựa trên SIP trong mạng chồng P2PSIP còn có

thể xác định đƣợc vị trí của node đích.

2.4 KẾT LUẬN CHƢƠNG 2

Chƣơng 2 đƣa ra một số khái niệm về các thành phần và mô hình kiến trúc tham

khảo của P2PSIP.

Tiếp theo là hai phƣơng pháp tiếp cận để tích hợp cơ chế P2P vào chuẩn SIP.

Hoặc là bản thân giao thức SIP hoặc là cách xử lý định vị tài nguyên đƣợc mở rộng.

Mở rộng SIP dẫn đến sự thay đổi giao thức, không cho phép nó đƣợc sử dụng trong

môi trƣờng với các thực thể SIP tiêu chuẩn. Các peer thích ứng hoạt động nhƣ một số

loại gateway giữa P2PSIP và các môi trƣờng SIP tiêu chuẩn, đây là giải pháp cho vấn

đề trên. Mở rộng dịch vụ định vị từ một P2P-LOC dẫn đến P2P-PROXY, có khả năng

tƣơng thích với SIP tiêu chuẩn và vì vậy có thể đƣợc tích hợp liền một mảnh vào môi

trƣờng SIP tiêu chuẩn. Việc tích hợp trực tiếp vào P2P-UA dẫn đến thay đổi quy tắc

của UA.

Phần cuối của chƣơng đó là các dự án trong hoạt động kết hợp SIP với P2P, bao gồm

dự án SOSIMPLE của trƣờng cao đẳng William và Mary. Nó thay thế quá trình tìm

kiến và đăng ký ngƣời dùng SIP bằng giao thức P2P đang tồn tại. Một dự án khác là

kiến trúc P2P thuần nhất cho hệ thống điện thoại IP dựa trên SIP đƣợc phát triển tại

trƣờng đại học Columbia. Hệ thống sử dụng các bản tin SIP để thực hiện thuật toán

P2P.

Page 72: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 3. Ứng dụng của P2P SIP

Đinh Thị Phương, D05VT1 Page 60

CHƢƠNG 3: ỨNG DỤNG CỦA P2P SIP

3.1 CÁC LĨNH VỰC SỬ DỤNG P2P SIP

Nhiều mô tả về các trƣờng hợp sử dụng truyền thông P2P đã đƣợc thực hiện

gần đây với mục đích để phát triển những yêu cầu theo hƣớng tiếp cận dựa trên các

chuẩn IETF. Các trƣờng hơp sử dụng đƣơc xem xét chỉ là các ví dụ dựa trên những

kiến thức hiện tại, vì bạn không thể nói trƣớc đƣợc sự đổi mới.

Các trƣờng hợp sử dụng của P2P SIP đƣợc nhóm lại theo đặc điểm tính chất của môi

trƣờng mạng , trong đó những ngƣời sử dụng cuối và các thiết bị tham ra vào mạng

phủ P2P giao tiếp với nhau.

3.1.1 Môi trƣờng Internet toàn cầu

Môi trƣờng Internet toàn cầu bao gồm một số lƣợng lớn các vùng mạng tự trị

với các đặc tính đa dạng. Vì vậy, không có sự quản lý tập trung và kiểm soát mạng của

các mạng vật lý trên quy mô toàn cầu. Những con đƣờng truyền thông giữa 2 thiết bị

từ xa có thể kéo dài qua nhiều miền quản lý và đƣợc giả định là không an toàn. Phần

lớn các mạng phủ chia sẻ file P2P nổi tiếng hoạt động trong môi trƣờng này.

3.1.1.1 Nhà cung cấp dịch vụ VoIP P2P công cộng

P2P SIP có thể đƣợc sử dụng trong rất nhiều ứng dụng. P2P SIP có thể đƣợc sử

dụng để cung cấp dịch vụ VoIP P2P.

Skype là nhà cung cấp dịch vụ VoIP công cộng sử dụng công nghệ P2P giữa các thiết

bị ngƣời sử dụng cuối, sử dụng giao thức độc quyền không đƣợc chuẩn hóa. Skype sử

dụng một máy chủ đăng nhập tập trung, chịu trách nhiệm quản lý các tên ngƣời dùng

đã đăng ký. Những ngƣời sử dụng cuối đƣợc xác thực thông qua chứng chỉ đƣợc ký

hiệu bởi một máy chủ tập trung. Lƣu ý rằng máy chủ AAA không đóng bất cứ vai trò

gì trong việc khám phá và thiết lập cuộc gọi để truyền thông. Các thiết bị ngƣời dùng

cuối đƣợc phân tán qua Internet toàn cầu. Số lƣợng thiết bị ngƣời dùng cuối tham ra là

rất lớn. Động cơ chính thúc đẩy sử dụng P2P cho dịch vụ thƣơng mại VoIP là nó giúp

giảm đáng kể chi phí hoạt động và chi phí về cơ sở hạ tầng.

3.1.1.2 Mạng VoIP P2P toàn cầu mở

Đó là mạng P2P VoIP toàn cầu trong đó không có quyền lực tập trung nhƣ là

một nhà cung cấp dịch vụ duy nhất. Bất kỳ ai cũng có thể tham ra và rời khỏi mạng

một cách tự do và bất ckỳ ai cũng có thể cài đặt các phần mềm để tham ra vào mạng

chồng. Trong hệ thống nhƣ vậy, giao thức đƣợc sử dụng phải dựa trên các tiêu chuẩn

Page 73: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 3. Ứng dụng của P2P SIP

Đinh Thị Phương, D05VT1 Page 61

mở. Mạng VoIP P2P này giống với bản thân mạng Internet toàn cầu ở chỗ nó phân tán

sự quản lý và phát triển, cho phép một ngƣời bất kỳ tìm thấy một ngƣời bất kỳ khác

trong mạng phủ, và một thiết bị bất kỳ có hỗ trợ các giao thức chuẩn thì đƣợc sử dụng.

3.1.1.3 Hiện diện trực tuyến sử dụng các thiết bị điện tử tiêu dùng đa phương tiện

Presence hay dịch vụ hiện diện trực tuyến là một đặc trƣng quan trọng và hữu

ích đối với các ứng dụng VoIP và tin nhắn tức thời. Các phần mềm ứng dụng tin nhắn

tức thời nổi tiếng cung cấp sự hiện diện trực tuyến, tin nhắn văn bản và phƣơng tiện,

và hỗ trợ truyền tập tin giữa những ngƣời dùng trực tuyến. Vì các thiết bị điện tử tiêu

dùng đa phƣơng tiện ngày càng nhiều nhƣ máy quay phim, máy quay video xách tay

có kèm theo bộ phận ghi hình và ti vi trở thành một mạng lƣới, chia sẻ nội dung đa

phƣơng tiện tức thời nhƣ các bức ảnh, những video clip giữa những thành viên trong

gia đình và bạn bè sẽ trở thành nhu cầu mong muốn. VoIP có thể không cần thiết trên

một số các thiết bị điện tử tiêu dùng, tuy nhiên hiện diện trực tuyến, cho phép chia sẻ

nội dung nội dung tức thời sẽ trở thành nhu cầu đối với nhiều loại thiết bị điện tử tiêu

dùng. Mạng P2P toàn cầu hỗ trợ hiện diện trực tuyến là thành phần cơ sở hạ tầng quan

trọng cho trƣờng hợp sử dụng này.

3.1.2 Môi trƣờng yêu cầu an ninh

Có trƣờng hợp, mặc dù có kết nối Internet hoặc thậm chí cơ sở hạ tầng SIP

client/server nhƣ SIP proxy, ngƣời dùng có thể không thích sử dụng cơ sở hạ tầng bởi

vì liên quan tới an ninh hoặc có thể không đƣợc phép sử dụng cơ sở hạ tầng. Tình

huống nhƣ vậy gọi là môi trƣờng yêu cầu an ninh.

Truyền thông nặc danh

Trong trƣờng hợp này đôi khi ngƣời dùng có nhu cầu giao tiếp theo kiểu nặc

danh với nhau có thể vì lý do chính trị, thƣơng mại…. P2P SIP cũng có thể đƣợc sử

dụng để cung cấp truyền thông nặc danh. Vì không có các máy chủ tập trung bên trong

cơ sở hạ tầng P2P SIP, những ngƣời sử dụng không thể bị giám sát một cách dễ dàng,

cách duy nhất để vô hiệu hóa các mạng nhƣ vậy là ngắt bỏ hoàn toàn kết nối Internet.

Tổ chức nhỏ với nhu cầu bảo mật

Một số tổ chức nhỏ có nhu cầu bảo mật có thể cần các hệ thống truyền thông

cho phép các thành viên của tổ chức liên lạc trực tiếp với một thành viên khác ở bất kể

vị trí nào, với mã hóa, và không có bất kỳ kết nối đến hoặc sử dụng các máy chủ, hoặc

là nội bộ hay bên ngoài tổ chức. Đối với các tổ chức này, hệ thống SIP client/server

truyền thống là không thể đáp ứng đƣợc. Các thực thể cần một hệ thống truyền thông

Page 74: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 3. Ứng dụng của P2P SIP

Đinh Thị Phương, D05VT1 Page 62

dễ dàng thuận tiện mà không cần tới các máy chủ tập trung. Những ngƣời sử dụng có

thể trùng với các trƣờng hợp giao tiếp nặc danh cũng đƣợc mô tả bên trên.

Ví dụ: Các tổ chức đang phát triển công nghệ cần có sự quan tâm của nhà cung cấp

dịch vụ, nhƣng vì kích thƣớc nhỏ có thể không có mong muốn hoặc thời gian để duy

trì các máy chủ tập trung. Các tổ chức với nhu cầu an ninh sẽ ngăn cản bất kỳ luồng

lƣu lƣợng nào đi qua máy chủ trung tâm.

3.1.3 Môi trƣờng bị giới hạn kết nối Internet hoặc cơ sở hạ tầng

Mạng add-hoc

Khi không có hạ tầng mạng vật lý sẵn sàng ví dụ nhƣ môi trƣờng đó đã cô lập,

các mạng ad-hoc không dây và không có kết nối Internet hoặc các mạng ad-hoc với

giới hạn kết nối tới Internet nhƣ trong tình huống tổ chức các sự kiện công cộng ngoài

trời, trƣờng hợp khẩn cấp nhƣ khủng bố hay ở chiến trƣờng. Bất kỳ loại cấu hình nào

cũng đều khó khăn bởi vì việc hỗ trợ kỹ thuật không sẵn sàng trong môi trƣờng nhƣ

vậy. Trong một số trƣờng hợp, kết nối mạng Internet toàn cầu có thể sẵn có, nhƣng rất

tốn kém, trong khả năng hạn chế, hoặc không ổn định, chẳng hạn nhƣ kết nối vệ tinh.

Vậy thích hợp nhất sẽ là cục bộ hóa sự truyền thông càng nhiều càng tốt, giảm sự phụ

thuộc vào bất kỳ cơ sở hạ tầng mạng Internet toàn cầu.

Ứng dụng P2P SIP vào các mạng add-hoc, kết nối một tập hợp các thiết bị với

tinh thần tự nguyện. P2P SIP có thể cung cấp dịch vụ VoIP tới những môi trƣờng nhƣ

trên.

Ví dụ: Một nhóm gặp gỡ nhau trong một cuộc họp, nhƣng không có kết nối

Internet. Nếu ngƣời sử dụng thiết lập mạng ad-hoc không dây hoặc có một trạm cơ

bản, tất cả ngƣời dùng có thể kết nối và thiết lập các buổi trò chuyện bằng cách sử

dụng giao thức IM mà không cần cấu hình máy chủ.

Mở rộng nghiên cứu về các thiết bị di động

Mạng lƣới các thiết bị di động có thể chuyển tiếp lƣu lƣợng giữa chúng để tìm

thấy trạm gốc, thậm chí nếu trạm gốc nằm ngoài khả năng tìm kiếm của thiết bị.

Ví dụ: một ngƣời dùng có một máy cầm tay để giao tiếp và không thể tìm thấy một

trạm gốc. Một vài ngƣời dùng khác nằm trong dải của cả ngƣời dùng và một trạm gốc.

Ngƣời dùng trung gian có thể phục vụ chuyển tiếp cho ngƣời gọi mà nằm ngoài dải.

3.1.4 Môi trƣờng riêng tƣ có sự quản lý

Mạng lƣới trong một công ty hay mạng campus trƣờng học là một ví dụ về môi

trƣờn mạng riêng tƣ và đƣợc quản lý. Hầu hết mô hình SIP client/server có thể đƣợc sử

Page 75: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 3. Ứng dụng của P2P SIP

Đinh Thị Phương, D05VT1 Page 63

dụng và quản lý các ứng dụng truyền thông thời gian thực. Tuy nhiên, P2PSIP có thể

đƣợc sử dụng để thay thế hoặc nhƣ một phƣơng pháp bổ sung, để thực hiện nhiều mục

đích nhƣ giảm bớt kinh phí về quản lý và chi phí, tăng khả năng mở rộng và độ ổn

định.

Dự phòng cho SIP proxy

Liên quan tới khả năng chịu lỗi, P2P SIP có thể đƣợc sử dụng để thực hiện việc

dự phòng cho các máy chủ SIP Proxy tiêu chuẩn. Vì vậy, các nhà cung cấp dịch vụ SIP

phải cung cấp các cụm máy chủ, cho phép sử dụng P2P SIP để đồng bộ hóa dữ liệu.

P2P SIP cũng có thể đƣợc sử dụng để khắc phục sự cố trong trƣờng hợp máy chủ bị

đánh sập. Với cách tiếp cận này, rất dễ dàng để thêm các proxy và giảm thiểu việc gián

đoạn dịch vụ và tăng độ vững chắc cho hệ thống.

IP-PBX quy mô nhỏ

P2P SIP có thể thay thế cho các mạng VoIP nội bộ bên trong các công ty nhỏ.

Thƣờng thì, các công ty không có các nhân viện quản trị để quản lý một hệ thống tập

trung dựa trên SIP.

Nhiều doanh nghiệp nhỏ có nhu cầu về các hệ thống truyền thông tích hợp. Các

hệ thống này có các yêu cầu hơi khác với IP PBX truyền thống. Thƣờng thì các công

ty không có các nhân viện quản trị để quản lý một hệ thống tập trung dựa trên SIP. Vì

vậy yêu cầu các hệ thống tự cấu hình cơ bản và/hoặc tự tổ chức. Các thiết bị đầu cuối

có thể đƣợc thêm vào mà không yêu cầu cấu hình trên các thiết bị tập trung.

Các hệ thống này sẽ cung cấp các tính năng tƣơng tự nhƣ các hệ thống PBX

client/server. Kết nối tới mạng PSTN là một tính năng quan trọng đối với các hệ thống.

Ngoài ra, chúng có thể hỗ trợ các tính năng nhƣ chuyển cuộc gọi, voice mail và các

kiểu giao tiếp khác nhƣ IM hoặc các tính năng phƣơng tiện nhƣ các dịch vụ hội nghị

hay video.

3.2 MỘT SỐ ỨNG DỤNG CỤ THỂ CỦA P2P SIP

DHTs đƣợc sử dụng cho một lƣợng lớn các ứng dụng trong mạng P2P, một vài

trong số này đƣợc chỉ ra trong hình bên dƣới:

Page 76: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 3. Ứng dụng của P2P SIP

Đinh Thị Phương, D05VT1 Page 64

VoIP, Video Presence IMTruyền tệp

tin

Lớp DHT

TCP/IP

Các ứng dụng P2P

Mạng chồng

Internet

Các ứng dụng SIP

Hình 3-1: Một số ứng dụng trong mạng P2P

Đi qua NAT và tường lửa

Trong thế giới lý tƣởng, các ISP và các nhà quản trị hệ thống nên cho phép

những thiết bị tƣờng lửa và NAT của họ với các SIP proxy hoặc các cổng thông tin

mức ứng dụng (Application level gateway). Tuy nhiên, trong thực tế hiếm khi thực

hiện đƣợc điều này. Đây chính là động lực thúc đẩy các nhà phát triển ứng dụng viết

những chƣơng trình theo yêu cầu của khách hàng để làm việc đƣợc với NAT và tƣờng

lửa.

Có hai định hƣớng cho NAT và firewall Traversal: Tự động phát hiện loại NAT và

tƣờng lửa và tạo đƣờng hầm xuyên qua các thiết bị tƣờng lửa và NAT cho các bản tin

hƣớng nội và hƣớng ngoại. Việc phát hiện đƣợc thực hiện vào lúc khởi động ứng dụng

khi node kết nối tới một siêu node. Node thực hiện thuật toán thiết lập kết nối tƣơng

tác (Interactive Connectivity Establishment - ICE) cho NAT traversal. Khi đó sẽ ƣu

tiên phƣơng thức truyền thông UDP. Tuy nhiên, nếu không thể đƣợc nhận các bản tin

UDP (ví dụ, do tƣờng lửa chặn UDP), thì một đƣờng hầm TCP lên tới 80 cổng, bắt đầu

từ node bên trong tới siêu node bên ngoài có thể đƣợc sử dụng cho cả các bản tin

hƣớng nội và hƣớng ngoại.

Các bản tin offline messages

Phần này mô tả các vấn đề với bản tin offline. Khi Alice gọi cho Bob hoặc để

lại một tin nhắn tức thời cho Bob nhƣng Bob không có trên mạng, thì tin nhắn này cần

Page 77: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 3. Ứng dụng của P2P SIP

Đinh Thị Phương, D05VT1 Page 65

đƣợc hệ thống lƣu trữ một cách tin cậy và phân phối tới Bob khi anh ta xuất hiện trực

tuyến trên mạng.

Trong mạng chồng P2P có 3 nơi có thể lƣu trữ các bản in offline là: node

nguồn, node đích hoặc bất kỳ một node trung gian nào đó. Các thƣ thoại PSTN cổ điển

đƣợc lƣu trữ trong thiết bị trả lời đích gắn kèm điện thoại của ngƣời đƣợc gọi, hoặc

trong một số trƣờng hợp trong máy chủ thƣ thoại trung tâm gắn kèm tổng đài PBX

đích. Tƣơng tự, node P2P-SIP của NSD đích có thể lƣu trữ bản tin nếu NSD đích

không nhấc máy điện thoại. Tuy nhiên, vấn đề xuất hiện ở đây là nếu điện thoại đích

không tự kích hoạt hoặc NSD không khởi động máy của mình.

Một biện pháp để giải quyết vấn đề này là sử dụng các peer DHT chịu trách nhiệm lƣu

trữ vị trí của Bob cũng nhƣ lƣu trữ các bản tin đa phƣơng tiện offline của Bob nhƣ

minh họa trong Hình 3-2

58

3924

1042

51

16

20

Bob=45, các bản tin

của Bob đƣợc lƣu

trữ tại node 58

Sam=32

Các bản tin của sam

đƣợc lƣu tại node 32Ngƣời gử 16 không cần

lƣu trữ bản tin vì nó

không đƣợc gửi tới đích

Ngƣời gửi 20 cũng

lƣu trữ các bản tin

Node 58 lƣu trữ tất cả các bản tin với node thứ r

kế tiếp (ở đây r=1)

Hình 3-2: Lưu trữ bản tin offline

Trong trƣờng hợp xảy node gặp sự cố, bản tin offline trở nên không có giá trị

cho tới khi node lƣu trữ online trở lại. Để giải quyết vấn đề này, node có thể lƣu trữ

Page 78: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 3. Ứng dụng của P2P SIP

Đinh Thị Phương, D05VT1 Page 66

bản tin ở nhiều nơi nhƣ sử dụng một hệ thống lƣu trữ tệp tin P2P với chỉ thị đợi bản tin

để thực hiện việc lƣu trữ bản tin offline.

Một tùy chọn khác đối với node ngƣời gọi là lƣu bản tin cục bộ và phân phối nó

tới node đích khi node đích có giá trị. Chỉ thị phân phối bản tin đƣợc gửi chính xác trở

lại ngƣời gửi. Nếu bản tin không đƣợc phân phối hoặc node lƣu trữ lỗi, thì node ngƣời

gửi sẽ tìm node lƣu trữ mới và ghi lại bản tin mà không cần sự can thiệp của NSD. Khi

một node khởi động, nó sẽ kiểm tra bất kỳ bản tin không đƣợc phân phối nào từ chu kỳ

trƣớc, và cố gắng gửi lại chúng khi băng thông và CPU có giá trị. Điều này dẫn tới

những vấn đề bảo mật do cùng một máy máy đƣợc nhiều ngƣời sử dụng chung, ví dụ

trong một quán Internet.

Tuy nhiên, một vài node có thể chỉ lƣu tóm tắt các bản tin không đƣợc phân

phối (nhƣ đối tƣợng, ngày, tiêu đề) thay vì nội dung cụ thể để tiết kiệm băng thông và

bộ nhớ. Một số node có thể cố gắng gửi bản tin bằng các phƣơng tiện khác nhƣ qua thƣ

nếu việc nhận dạng thƣ đƣợc xác minh thông qua mật mã xem có thuộc về NSD đích

không.

Để nhận bản tin offline, node đích phải đăng ký chỉ thị đợi bản tin (message

waiting indication - MWI) trong mạng P2P và nhận đƣợc thông báo cho biết khi khởi

động nếu có bản tin offline. Sau đó, node có thể tìm thấy bản tin sử dụng truyền dẫn

tệp tin hoặc cuộc gọi đa phƣơng tiện thời gian thực tới một URL đặc biệt nhƣ sip:bob-

vmail@server. Đồng thời, NSD có thể sử dụng dịch vụ MWI từ một số nhà cung cấp

dịch vụ trung tâm đăng ký với mạng P2P-SIP thay cho NSD để nhận các cuộc gọi của

NSD.

Hội nghị đa bên

Trong các hệ thống điện thoại SIP truyền thống, hội nghị đa bên đƣợc thực hiện

thông qua các cổng hội nghị quay số đƣợc sắp xếp trƣớc (hoặc các máy chủ hội nghị).

Các máy chủ hội nghị này có thể đăng ký các địa chỉ dành cho hội nghị nhƣ staff-

[email protected] với mạng chồng P2P. Tuy nhiên, sự kết hợp này đƣợc thực hiện

thông qua một máy chủ trung tâm, do đó có thể trở thành nút cổ chai đối với những hội

nghị lớn.

Đối với những hội nghị cảm biến trong phạm vi nhỏ giữa các ngƣời tham gia,

một ngƣời tham gia mà có khả năng tốt (CPU, bộ nhớ, băng thông) có thể trở thành

ngƣời trộn và trộn âm thanh từ các ngƣời tham gia khác. Do việc trộn âm thanh yêu

cầu truy cập tới các mẫu âm thanh không đƣợc mật mã hóa từ tất cả những ngƣời nói,

một ngƣời không thể chọn một peer không tin cậy nhƣ ngƣời trộn. Một khả năng có

Page 79: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 3. Ứng dụng của P2P SIP

Đinh Thị Phương, D05VT1 Page 67

thể khác là chọn một ngƣời tham gia hội nghị hiện có nhƣ ngƣời trộn. Hội nghị hoàn

toàn phi tập trung hóa có thể đƣợc sử dụng để thiết lập một báo hiệu (signaling) hình

lƣới hoàn toàn và mối quan hệ truyền thông giữa các thành viên tham gia. Giao thức

làm việc cho sự tham gia và rời cùng lúc của các thành viên trong hội nghị. Điều này

ngăn ngừa sự phụ thuộc vào một node ngang hàng riêng thực hiện trộn.

Thay vì một truyền thông hình lƣới hoàn toàn, một cây phân bố truyền thông

điểm-đa điểm cũng có thể đƣợc sử dụng. Giả sử rằng một số lƣợng nhỏ các thành viên

(một hay hai) sẽ đang nói một lát, và node nhận có thể lựa chọn hoặc trộn các mẫu âm

thaanh từ nhiều luồng trông phiên.

3.3 KHẢ NĂNG LÀM VIỆC GIỮA P2P SIP VÀ IMS

3.3.1 Giới thiệu về IMS

Các nhà khai thác viễn thông và các công ty Internet ngày nay đang cung cấp các dịch

vụ truyền thông thời gian thực dựa trên nền IP theo hai xu hƣớng khác nhau. Một là

các dịch vụ để thay thế hệ thống điện thoại truyền thống, tập trung chủ yếu vào các

yêu cầu nhƣ chất lƣợng dịch vụ, độ khả dụng, các dịch vụ bổ sung tiêu chuẩn, đƣợc

phân phối từ các mạng PLMN và PSTN, do đó cùng với sự phát triển của các mạng

thế hệ kế tiếp NGN, một số kiến trúc mới đƣợc chấp nhận (ví dụ IMS) có độ tập trung

cao, đƣợc phân lớp và hƣớng tới điều khiển phiên dịch vụ phức tạp và có sức mạnh

lớn, và do đó quản lý tiểu sử NSD chắc chắn.

Mặt khác, nhiều công ty trẻ hơn đã cam kết cung cấp các dịch vụ trên Internet,

bắt đầu bổ sung thêm các dịch vụ âm thanh và video cho trải nghiệm của NSD, nó giới

hạn việc chia sẻ file và lƣớt web, tận dụng sự dồi dào của băng thông sẵn có hiện này

với chi phí thấp. Trong khi các nhà khai thác có đƣợc cả các mạng lƣới với nhiều nhà

cung cấp và khả năng tƣơng tác, đã bắt đầu thông qua các giải pháp tiêu chuẩn ngay từ

khi mới bắt đầu, thế hệ đầu tiên của những ứng dụng truyền thông thời gian thực qua

Internet (ví dụ MSN Messenger, ICQ, Skype) thƣờng thực hiện các giao thức độc

quyền và thiết lập các nhóm kín.

Tuy nhiên, nỗ lực chuẩn hóa P2PSIP của IETF đã đƣa ra một bƣớc tiến mới

trong điều khiển chung, điều này có thể tạo ra những thuận lợi thực sự bởi sự cùng

hoạt động và cùng tồn tại của chúng, mở rộng phạm vi của họ trong mỗi miền

(domain) của hãng khác. Phần này sau khi đƣa phân biệt các P2P, SIP và các miền ban

đầu của chúng, sẽ đƣa ra những kịch bản cùng hoạt động của chúng, nêu bật những cơ

hội hấp dẫn cho các nhà cung cấp dịch vụ và viễn thông và thảo luận những vấn đề kỹ

thuật để đạt đƣợc khả năng tƣơng tác đó.

Page 80: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 3. Ứng dụng của P2P SIP

Đinh Thị Phương, D05VT1 Page 68

3.3.2 Sự khác nhau về ứng dụng và dịch vụ giữa P2P-SIP và IMS

P2P-SIP là một nỗ lực chuẩn hóa do IETF tạo ra, nhằm định nghĩa một giao

thức mới cho phép các thiết bị của NSD liên lạc sử dụng các giao thức VoIP tiêu

chuẩn nhƣ SIP và RTP trong mô hình ngang hàng mà không phụ thuộc vào các máy

chủ trung tâm. Thông qua việc tiếp cận một số ứng dụng Internet phổ biến nhất

(BitTorrent, Skype, FON), mục đích chính của giao thức là cho phép cung cấp các

dịch vụ truyền thông dựa vào – một phần hoặc toàn bộ - các tài nguyên đƣợc sở hữu và

chia sẻ bởi chính những NSD. Do đó, bất kỳ thiết bị nào có một kết nối với băng thông

đủ rộng có thể thiết lập các phiên đa phƣơng tiện và thoại, vận hành một ứng dụng

P2P-SIP dễ dàng và tham gia một mạng chồng đƣợc duy trì bởi các nhà cung cấp dịch

vụ nhỏ hoặc bởi các nhóm những NSD.

Mặt khác, các nhà khai thác viễn thông đang khai thác các mạng kiểu gói của họ

với phân hệ đa phƣơng tiện IP - IMS để trong tƣơng lai thay thế hạ tầng hệ thống điện

thoại chuyển mạch cũ. Với xu hƣớng nhƣ vậy, ngoài việc cho phép duy trì hạ tầng duy

nhất, còn cho phép các nhà cung cấp triển khai các dịch vụ của họ trong một môi

trƣờng truy nhập bất khả tri (access agnostic), mở rộng tối đa khả năng vƣơn xa. Tuy

nhiên, kiến trúc mới cần đáp ứng tất cả các yêu cầu viễn thông đặc thù liên quan tới cả

trải nghiệm của NSD và quy định luật pháp; do đó các dịch vụ thông thƣờng đƣợc

cung cấp là tƣơng đối khác so với các dịch vụ P2P. Bảng 3-1 chỉ ra sự khác nhau cơ

bản giữa các dịch vụ đƣợc cung cấp trong các mạng IMS và trong các mạng chồng

P2P-SIP.

IMS P2P SIP

Số tiền trả Dựa trên số thuê bao Dựa trên quảng cáo/miễn phí

Chất lƣợng Đƣợc bảo đảm Nỗ lực tối đa

Khả năng kết nối với

các mạng cũ

Đƣợc hỗ trợ trong suốt Đƣợc cung cấp bên ngoài /

không có

Mục đích Gia đình, kinh doanh Truyền thông ảo / web

Bảng 3-1: So sánh các dịch vụ được cung cấp bởi mạng IMS và mạng chồng P2P-SIP

Một cuộc tranh luận kéo dài đang diễn ra về bản chất của truyền thông thời gian

thực. Bởi vì các nhà khai thác hệ thống điện thoại truyền thống vẫn xem xét chúng nhƣ

Page 81: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 3. Ứng dụng của P2P SIP

Đinh Thị Phương, D05VT1 Page 69

là các dịch vụ thông thƣờng. Các công ty Internet có lẽ quan tâm đến việc chấp nhận

P2P-SIP và xem chúng nhƣ là các ứng dụng. Cả hai ý kiến đều đúng trong những hoàn

cảnh khác nhau. Các ứng dụng, từ email tới VoIP thúc đẩy những hình thức quan hệ

mới qua Internet, và đƣợc sử dụng chủ yếu trong cộng đồng ảo và giúp cho truyền

thông dễ dàng;

Phần tiếp theo sẽ mô tả hai mức liên kết làm việc cùng nhau giữa hai mạng và

những lợi ích mà chúng mang lại.

3.3.3 Kiến trúc liên kết giữa P2P-SIP và IMS

Gateway AS

.

Mạng P2P SIP Mạng IMS

Hình 3-3: Kiến trúc liên kết P2P SIP và IMS

Liên kết làm việc giữa máy khách IMS và máy khách P2PSIP

Hình thức cơ bản nhất về khả năng làm việc là giữa các máy khách đƣợc đăng

ký riêng biết trong mạng chồng P2P-SIP và trong mạng IMS. Loại tƣơng tác nhƣ vậy,

đƣợc chỉ ra trong Hình 3-4.

I-CSCF S-CSCF

P-CSCF

Proxy PEER

Relay Agent

P2P SIP

SIP

RTP

[email protected] [email protected]

p2p.org isp.org

DNS

Page 82: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 3. Ứng dụng của P2P SIP

Đinh Thị Phương, D05VT1 Page 70

Hình 3-4: Khả năng làm việc giữa các máy trạm P2P-SIP và IMS

Trong trƣờng hợp này, dựa vào khả năng của các máy khách trong cả mạng

IMS và mạng P2PSIP để thiết lập các phiên với những tác nhân NSD SIP thông

thƣờng. Với điều kiện là các mạng có những điểm đầu vào của chúng đƣợc đăng ký

trong DNS – I-CSCF đối với IMS, các Proxy peer đối với P2PSIP - và không có những

chính sách hạn chế quản lý chúng, các hoạt động xảy ra nhƣ trong trƣờng hợp thiết lập

phiên qua các miền khác nhau.

Hình thức liên kết làm việc này rất hữu ích để cho phép truyền thông giữa

những bối cảnh khác nhau nhƣng không đƣa ra bất kỳ một cải tiến kỹ thuật nào tới cả

hai môi trƣờng. Ngoài ra, cần lƣu ý rằng nhƣ chỉ ra trong ví dụ 3-3(a) , NSD P2P-SIP

đã đăng ký trong miền mạng chồng, do đó các chính sách nhận thực trong các mạng

chồng P2PSIP là khác nhau theo từng trƣờng hợp, nó hầu nhƣ không thể khẳng định

một mức độ bảo mật tối thiểu.

P2P

UA

Mạng P2P SIP1. Get

2. IP

3. INVITE4. INVITE

5. INVITE

6. INVITE

7. 200 OK

8. 200 OK

9. 200 OK

10. 200 OK

Gateway

AS S-CSCF P-CSCFIMS

UA

Hình 3-5: Thiết lập phiên từ P2P SIP tới IMS

Page 83: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 3. Ứng dụng của P2P SIP

Đinh Thị Phương, D05VT1 Page 71

Mạng P2P SIP

P2P SIP

UA

Gateway

AS S-CSCF P-CSCFIMS

UA

1.INVITE

2.INVITE

3.INVITE

4. Get

6.INVITE

7. 200 OK

8. 200 OK

9. 200 OK

10. 200 OK

5. IP

Hình 3-6: Thiết lập phiên từ IMS tới P2P SIP

Liên kết làm việc giữa mạng P2PSIP và mạng IMS

Một kịch bản làm việc liên mạng tiên tiến hơn đƣợc chỉ ra trong ví dụ hình 3-7.

IMSP2 P SIP

RTPRE

GIS

TE

R

INV

ITE

[email protected]@isp.com

Hình 3-7: Liên kết làm việc giữa P2P SIP và IMS

Trong trƣờng hợp này, tác nhân NSD P2P-SIP cũng có một đăng ký thuê bao

với một nhà cung cấp dịch vụ IMS, lợi dụng mạng phủ để đăng ký với mạng nhà IMS

của nó. Một khi nó đƣợc nhận thực, UA P2P-SIP cũng có thể truy cập trong suốt tất cả

các dịch vụ IMS mà NSD đã đăng ký (nhƣ thƣ thoại, push-to-talk) và có thể liên lạc

với tất cả các mạng mà nhà cung cấp IMS của anh ta đƣợc kết nối tới. Trong cách này,

một NSD IMS đã đăng ký tạm thời trên một mạng P2P-SIP sẽ xuất hiện với mạng nhà

IMS của anh nhƣ thể là anh ta là thuộc mạng tạm trú IMS, bởi bậy các dịch vụ của anh

ta và dịch vụ logic đƣợc điều khiển và thực hiện bởi các chức năng điều khiển và máy

chủ ứng dụng của mạng nhà IMS.

Page 84: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Chương 3. Ứng dụng của P2P SIP

Đinh Thị Phương, D05VT1 Page 72

Vì P2P-SIP đặc biệt phù hợp cho những môi trƣờng bị giới hạn và không bền

lâu, chúng đƣợc cho là sẽ phát triển phổ biến trong các năm tới (nhƣ các mạng ad-hoc

và mạng không dây đô thị miễn phí - free municipal wireless), kiểu liên kết này có thể

là một động lực để mở rộng phạm vi của mạng IMS. Ngoài ra, đối với các mạng

P2PSIP rộng lớn, nơi mà các kết nối đa phƣơng tiện với Internet bị ngăn cản bởi tƣờng

lửa hoặc sự thiếu hụt băng thông – một ví dụ đáng chú ý là các mạng không dây đô thị

tự do – ngƣời vận hành có thể dễ dàng triển khai các phần tử chuyển tiếp (ví dụ nhƣ

các máy chủ STUN với khả năng chuyển tiếp), không chỉ các thuê bao của họ mà còn

những NSD nặc danh có thể sử dụng cùng với các công cụ chuẩn đối với chuyển dịch

NAT để thiết lập các luồng đa phƣơng tiện một cách hiệu quả.

3.4 KẾT LUẬN CHƢƠNG 3

Hiện nay, có rất nhiều nỗ lực để chuẩn hóa P2PSIP. P2PSIP sẽ có các lĩnh vực

ứng dụng của chính nó nhƣ Skype, VoIP sử dụng các cơ chế P2P làm việc, thậm chí

bên trong Internet. Sức mạnh lớn của P2PSIP giảm bớt các nỗ lực quản lý bằng việc

loại bỏ đi các máy chủ tập trung.

Chƣơng 3 xác định và phân loại các trƣờng hợp sử dụng P2P dƣa trên giao thức

SIP. Xác định các trƣờng hợp sử dụng sẽ giúp hiểu và làm rõ những yêu cầu của

P2PSIP. Đặc biệt, các trƣờng hợp sử dụng sẽ giúp nhận ra sự giống và khác nhau giữa

những yêu cầu đối với P2PSIP trong các ứng dụng khác nhau.

Tập trung chủ yếu vào các ứng dụng liên quan tới truyền thông thời gian thực

nhƣ VoIP, IM, Presence… và khả năng liên kết làm việc giữa P2PSIP và IMS, cung

cấp một kiến trúc mạng lõi dựa trên nền IP với mục đích phân phối các dịch vụ đa

phƣơng tiện, hội tụ di động-cố định và kết nối với nhiều loại mạng truy nhập khác

nhau (mạng di động 2G/3G, Wifi, Wimax, mạng cố định) với giao thức báo hiệu chính

là giao thức SIP và sự phân tán của mô hình mạng P2P.

Page 85: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Kết luận

Đinh Thị Phương, D05VT1 Page 73

KẾT LUẬN

Sự phát triển với tốc độ chóng mặt của các dịch vụ đa phƣơng tiện với yêu cầu

về băng thông và chất lƣợng dịch vụ cao đã mở ra một kỷ nguyên mới trong lĩnh vực

công nghệ viễn thông. Cùng với đó số ngƣời truy nhập Internet ngày một tăng với tốc

độ chóng mặt, các cụm máy chủ dựa trên mô hình client/server khó có thể đáp ứng

đƣợc lƣợng ngƣới truy nhập quá lớn, cùng với nó là nhu cầu mở rộng mạng lƣới để

đáp ứng nhu cầu của khách hàng ở khắp nơi trên thế giới. Hệ thống P2P hiện đang

đƣợc coi là giải pháp triển vọng nhất để khác phục những nhƣợc điểm của mô hình

client/server.

SIP giao thức điều khiển báo hiệu phổ biến đƣợc lựa chọn cho các dịch vụ đa phƣơng

tiện, đàm thoại qua Internet VoIP hiện nay.

Đàm thoại qua Internet sẽ trở thành loại hình kinh doanh đang phát triển mạnh

hiện nay, nó giảm chi phí cho ngƣời sử dụng khi giao tiếp với bạn bè và gia đình từ

xa. Skype mạng điện thoại Internet ngang hàng trên nền P2P chƣa đƣợc chuẩn hóa

cung cấp các dịch vụ VoIP và IM lớn nhất thế giới hiện nay, nó phát triển nhanh chóng

cả về số lƣợng ngƣời dùng và chất lƣợng dịch vụ nhƣng có một nhƣợc điểm đó là nó

sử dụng các giao thức độc quyền chƣa đƣợc chuẩn hóa. Nhu cầu muốn có một hệ

thống mở sử dụng các giao thức chuẩn hóa để ngƣời dùng với bất kỳ một thiết bị có hỗ

trợ chuẩn đều có thể sử dụng đƣợc đã thúc đẩy các nghiên cứu nỗ lực chuẩn hóa P2P

SIP.

Mục đích của P2P SIP là cho phép mạng P2P tin cậy giữa các peer SIP bằng

cách sử dụng SIP nhƣ giao thức báo hiệu. Khái niệm đằng sau P2PSIP là phát huy bản

chất phân tán và khả năng chịu lỗi của P2P bằng cách xây dựng một mạng chồng bên

trên SIP để cung cấp các dịch vụ P2P cho mạng lƣới của các peer SIP. Điều này giúp

loại bỏ đi sự cần thiết của những thành phần máy chủ tập trung va cho phép mạng P2P

tin cậy giữa các node SIP.

Đồ án của em đã trình bày kiến trúc tổng thể về hệ thống P2PSIP, mô tả kiến

trúc toàn diện, môi trƣờng của hệ thống, phác họa kiến trúc của mạng chồng, phƣơng

pháp tiếp cận để tích hợp cơ chế P2P vào chuẩn SIP, có 2 xu hƣơng, một là mở rộng

bản thân giao thức SIP, việc mở rộng này dẫn tới thay đổi bản thân chuẩn SIP, làm nó

mất đi khả năng tƣơng thích với các thực thể tiêu chuẩn. Giải pháp là đƣa ra các Peer

thích ứng hoạt động nhƣ một loại cổng giữa P2PSIP và môi trƣờng SIP tiêu chuẩn.

Cách tiếp cận thứ 2 đó là mở rộng dịch vụ định vị tích hợp P2P-LOC vào thành P2P-

Page 86: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Kết luận

Đinh Thị Phương, D05VT1 Page 74

PROXY tạo ra khả năng tƣơng thích với SIP tiêu chuẩn vì thế đảm báo có thể tƣơng

thích với các ứng dụng đang tồn tại và các ứng dụng tiên tiến khác. Một số dự án về sự

kết hợp P2P SIP đƣợc trình bày ngắn gọn. Phần cuối là các ứng dụng của P2PSIP chủ

yếu ở các dịch vụ VoIP thời gian thực và khả năng liên kết hoạt động giữa IMS và

P2PSIP.

Hiện nay P2P SIP vẫn đang trong quá trình nghiên cứu và chuẩn hóa. Nhiều

giao thức đƣợc đề xuất cho kiến trúc mạng chồng P2P SIP hiện đang rất đƣợc quan

tâm mà nằm ngoài phạm vi đồ án của em nhƣ giao thức nhận dạng máy trạm HIP

(Host Identity Protocol). HIP là một giao thức thử nghiệm đƣợc định nghĩa bởi tổ chức

IETF. Ý tƣởng của HIP là đối với mỗi một host cụ thể sẽ có một HI nhận dạng host

duy nhất đƣợc mật mã hóa an toàn từ địa chỉ IP của nó. HI (giá trị băm) đƣợc sử dụng

để tạo ra sự kết hợp an toàn giữa các host đang truyền thông, những trao đổi tiếp theo

sẽ đƣợc viết lại thành mật mã và các thiết bị đầu cuối có thể đƣợc bảo vệ chống lại

nhiều hình thức tấn công về bảo mật, bao gồm chuyển tiếp -replay, man in the middle,

và từ chối dịch vụ - denial of service. Ngoài ra còn có các giao thức nhƣ ASP (Address

Settlement by Peer-to-Peer), RELOAD ( Resource Location And Discovery), P2PNS

(A Secure Distributed Name Service for P2PSIP) , P2PNS đƣợc sử dụng để phân giải

SIP AoR thành URI liên lạc mà không cần sử dụng DNS hay các máy chủ tập trung.

Tuy nhiên do sự hạn chế về kiến thức và thời gian có hạn nên đồ án của em

không tránh khỏi còn nhiều thiếu sót, vì vậy em rất mong nhận đƣợc các ý kiến đóng

góp từ thầy giáo, cô giáo và các bạn.

Page 87: Do an p2p Sip_dinh Thi Phuong

Đồ án tốt nghiệp Đại học Tài liệu tham khảo

Đinh Thị Phương, D05VT1 Page 75

TÀI LIỆU THAM KHẢO

[1] Henry Sinnreich, Alan B.Johnston, “Internet Communications Using SIP”,

Wiley Publishing Inc, 2006.

[2] Syed A.Ahson, Mohammad Ilyas, ”SIP HANDBOOK Services, Technologies, And

Security of Session Initiation Protocol”, CRC Press Taylor & Francis Group, 2008.

[3] John F.Buford, Heather Yu, Eng Keong Lua, “P2P Networking and Applications” ,

Elservior Inc, 2008.

[4] http://www.p2psip.org