Tổng quan về giao thức SIP, taì liệu hay, Tổng quan về giao thức SIP Tổng quan về giao thức SIP Tổng quan về giao thức SIP Tổng quan về giao thức SIP Tổng quan về giao thức SIP Tổng quan về giao thức SIP Tổng quan về giao thức SIP Tổng quan về giao thức SIP v v v
Giao thức SIP A.Tổng quan về giao thức SIP I.Giao thức SIP Giao thức SIP (Secssion Initiation Protocol ) là giao thức báo hiệu điều khiển lớp ứng dụng được dùng để thiết lập , duy trì , kết thúc các phiên truyền thông đa phương tiện ( multimedia ) có một hoặc nhiều người tham gia . Các phiên multimedia bao gồm thoại internet , hội nghị và các ứng dụng tương tự có liên quan đến các phương tiện truyền đạt ( media ) như âm thanh , hình ảnh và dữ liệu . SIP sử dụng các bản tin mời ( INVITE ) để thiết lập các phiên và để mang các thông tin mô tả phiên truyền dẫn . SIP hỗ trợ các phiên đơn bá ( unicast ) và quảng bá ( multicast ) tương ứng các cuộc gọi điểm tới điểm và cuộc gọi đa điểm . SIP là một giao thức để thiết lập các phiên truyền thông . Các phiên SIP bao gồm : − Hội họp đa phương tiện qua internet . − Các cuộc gọi điện thoại qua internet . − Các phiên video qua internet . − Phân phối đa phuong tiên . Các phần tử của SIP có thể liên lạc thông qua : − Liên lạc cá nhân . − Phát quảng bá . − Thông qua tổ hợp của các quan hệ liên lạc cá nhân hoặc một tổ hợp của tất cả những phương tiên trên . Trong các môi trường IPv4 và IPv6 thông qua : − UDP − TCP − SCTP hoặc TLS trên nền TCP SIP là một giao thức mở rộng đơn giản − Các phương tiên ( Methods ) – Định nghĩa về phiên truyền thông . − Khối mào đầu ( Headers ) – Mô tả về phiên truyền thông . − Phần thông tin báo ( Message Body ) – SDP , ký tự , XML . II.Sự phát triển của giao thức SIP Đầu tiên SIP chỉ đơn thuần là một giao thức dùng để thiết lập phiên quảng bá cho Internet2 ( từ giữa đến cuối thập kỉ 90 ) . SIP được phát triển bởi SIP Working Group trong IETF. Phiên bản đầu tiên được ban hành vào tháng 3 năm 1999 trong tài liệu RFC 2543. Sau đó, SIP trải qua nhiều thay đổi và cải tiến. Phiên bản mới nhất hiện nay được ban hành trong IETF RFC 3261. RFC 3261 hoàn toàn tương thích ngược với RFC 2543, do đó các hệ thống thực thi theo RFC 2543 hoàn toàn có thể sử dụng với các hệ thống theo RFC 3261. Một bản tin SIP có hai phần, phần mào đầu và phần thân. Phần thân cho phép phục vụ các ứng dụng khác nhau một cách linh hoạt. Ban đầu phần thân chỉ dùng để chuyển tải các tham số miêu tả phiên SDP như codec, địa chỉ IP đầu cuối, Phần thân được sử dụng để mở rộng các ứng dụng của khác nhau của SIP ví dụ như SIP- T cho liên vận PSTN-SIP-PSTN hoặc MSCML (Media Server Control Markup Language) cho dịch vụ hội nghị. Sự phổ cập của SIP đã dẫn tới việc một loạt nhóm làm việc liên quan đến SIP được thành lập. Nhóm SIPPING (Session Initiation Protocol investigation working group) được thành lập với mục đích nghiên cứu các ứng dụng và phát triển các yêu cầu mở rộng cho SIP. Nhóm SIMPLE (SIP for Instant Messaging and Presence Leveraging Extensions) có nhiệm vụ chuẩn hoá các giao thức cho các ứng dụng nhắn tin tức thời. Các nhóm làm việc khác là PINT (PSTN and Internet Internetworking), SPIRITS (PSTN/IN requesting Internet Services). III.Các thành phần trong mạng SIP 1.Thành phần của SIP : bao gồm SIP User Agent ( UA ) và SIP server . 1.1.SIP User Agent ( người dùng Agent) : SIP UA hoặc thiết bị đầu cuối là điểm cuối của dialog : SIP UA guiử và nhận các yêu cầu và trả lời của SIP , nó là điểm cuối của luồng đa phương tiện và nó luôn là Người dùng Equiment ( UE ) – bao gồm ứng dụng trong thiết bị đầu cuối hoặc ứng dụng phần cứng chuyên dụng . UA gồm hai phần : − Người dùng Agent Client ( UAC ) : ứng dụng của người gọi – khởi tạo request . − Người dùng Agent Server ( UAS ) : chấp nhận , gửi lại , từ chối request và gửi trả lời cho request đến thay mặt cho người sử dụng . UA là thực thể SIP mà tương tác với với người sử dụng . Nó thường xuyên sử dụng giao diện với người sử dụng . Tuy nhiên , một vài hệ thống sử dụng SIP không trực tiếp kết nối với người sử dụng . Ví dụ : B có thể gửi lại tất cả lời mời vào phiên được nhận từ nửa đếm đến 7 giờ sáng đến máy trả lời SIP của B > máy này tự động thiết lập phiên trong thông điệp bản ghi . Nó cũng chứa UA – mà không nhất thiết lập duy trì tương tác với người sử dụng , nhưng vẫn trả lời mời hoặc chuyển lời mời trên dại diện của B . 1.2.SIP Server : SIP server : Cần phân biệt SIP Server và UA server cũng như mô hình client- server . Ở đây , SIP server là một thực thể luận lý , một SIP server có thể có chức năng của nhiều loại server hay nói cách khác một SIP Server có thể hoạt động như các server khác nhau trong các trường hợp khác nhau . Trong SIP Server có các thành phần quan trọng như : Proxy Server , Redỉect Server , Location Server , Registrar Server , … Proxy Sever : Có thể xem các Proxy Server như các router thiết bị đầu cuối SIP mà chuyển tiếp các yêu cầu và trả lời. Tuy nhiên các Proxy SIP sử dụng nguyên tắc định tuyến phức tạp hơn là chỉ tự động chuyển tiếp bản tin dựa vào bảng định tuyến. Chuẩn về SIP cho phép các Proxy thực hiện các hoạt động chẳng hạn như xác định tính hợp lệ của bản tin, xác thực người sử dụng, phân nhánh các request, phân giải địa chỉ, hủy bỏ các cuộc gọi đang chờ. Sự linh hoạt của các proxy SIP cho phép các nhà khai thác và quản trị mạng sử dụng các proxy cho các mục đích khác nhau và trong các vị trí khác nhau trong mạng (chẳng hạn như Proxy biên, Proxy lõi, và Proxy của các doanh nghiệp). Một Proxy Server được thiết kế trong suốt với các UA. Các Proxy Server được phép thay đổi các bản tin chỉ theo một số cách cụ thể và hạn chế. Ví dụ, một proxy không được phép thay đổi phần thân bản tin SDP của bản tin INVITE. Forking proxy: SIP proxy server định tuyến thông điệp đến nhiều hơn một đích được gọi là proxy phân nhánh. Forking Proxy có thể định tuyến thông điệp song song hoặc theo thứ tự. Ví dụ của Forking Proxy song song là việc rung chuông đồng thời của tất cả các điện thoại trong nhà. Forking Proxy theo thứ tự chứa proxy thử rung chuông lần lượt các vị trí khác nhau, có thể rung chuông trong một chu kỳ thời gian nhất định nếu người dùng không nhấc máy thì thử UA mới. Redirect Server : Truy nhập dữ liệu và dịch vụ định vị để tìm địa chỉ của user và gửi trả về bản tin lớp 300 để thông báo thiết bị chuyển hướng bản tin tới địa chỉ khác – tự liên lạc thông qua địa chỉ trả về . c.Registrar Sever : là sever nhận bản tin SIP REGISTER yêu cầu và cập nhật thông tin từ bản tin request vào “ location database “ nằm trong Location Sever . d.Location Sever Lưu thông tin trạng thái hiện tại của người dùng trong mạng SIP . 2.Các bản tin SIP mào đầu và đánh số : Dưới đây là các bản tin của SIP : INVITE : bắt đầu thiết lập cuộc gọi bằng cách gửi bản tin mời đầu cuối khác tham gia ACK : bản tin này khẳng định máy trạm đã nhận được bản tin trả lời bản tin INVITE BYE : bắt đầu kết thúc cuộc gọi CANCEL : hủy yêu cầu nằm trong hàng đợi REGISTER : đầu cuối SIP sử dụng bản tin này để đăng ký với máy chủ đăng ký OPTION : sử dụng để xác định năng lực của máy chủ INFO : sử dụng để tải các thông tin như âm báo DTMF Những bản tin trao đổi giữa A và B để thiết lập một phiên : 3. Khuôn dạng thông điệp : Thông điệp SIP gồm 3 phần: start line, header của thông điệp và body. Client gửi yêu cầu (request) và server trả lời bằng response. Giao dịch SIP bao gồm yêu cầu từ client, 0 hoặc nhiều provisional response và final response từ server. 3.1. SIP response Status line là dòng bắt đầu của response. Các bản tin đáp ứng được chia thành thành hai nhóm bao gồm 6 loại bản tin, mỗi bản dùng một mã trạng thái nằm trong một dải mã. Khuôn dạng thông điệp SIP SIP version Status code Reason Phrase Cấu trúc Response Line SIP response • Provisional (1xx): Bản tin này dùng để chỉ thị tiến trình nhưng không kết thúc giao dịch SIP (tìm kiếm, rung chuông, xếp hàng). • Final (2xx, 3xx, 4xx, 5xx, 6xx): Bản tin này chỉ thị kết thúc giao dịch SIP. 1xx: Provisional – đã nhận yêu cầu và đang tiếp tục xử lý yêu cầu. Tìm kiếm, rung chuông, xếp hàng đợi, nó được phát khi quá trình xử lý chưa thể kết thúc ngay được. Phía phát cần phải dừng quá trình truyền các yêu cầu khi nhận được bản tin này. 2xx: Success – Các yầu đã được xử lý thành công (nhận, hiểu và đã được tiếp nhận). 3xx: Redirection – Cần tiến hành thêm các hoạt động để có thể đáp ứng được các yêu cầu. Chúng được gửi bởi các Redirect Server. 4xx: Client Error – Lỗi do phía Client, các yêu cầu sai cú pháp hoặc không đáp ứng đúng yêu cầu của Server. 5xx: Server Error – Lỗi phía Server, server bị sự cố và không đáp ứng được các yêu cầu hợp lệ. 6xx: Global Failure – Lỗi tổng thể, các yêu cầu không thể được đáp ứng tại bất kỳ server nào. cụ thể : 1xx: Phản hồi thông tin : 100: đang thử : máy đựợc gọi đã tiếp nhận được yêu cầu bên gọi và gửi bản tin này mang tính chất phản hồi để thử 180: đổ chuông : Máy được gọi đổ chuông, và gửi bản tin chuông về cho bên gọi. 181: cuộc gọi đang chuyển hướng: May được gọi lập trình chuyển hướng đến một máy khác trong khi nó đang bận hoặc không xử lý cuộc gọi của bên gọi. 182 : đang xếp hàng đợi : chờ đợi vì có nhiều yêu cầu đến cùng lúc 183: Phiên đang tiến hành: Có phiên cuộc gọi khác đang đựơc tiến hành với máy đựợc gọi 2xx: Phản hồi thành công 200 OK phản hồi thành công : được dùng khi bên được yêu cầu trả lời thành công yêu cầu của bên yêu cầu: ỏ ví dụ trên ta dùng hai bản tin 200 ok. Trong đó bản tin đầu tiên do máy được gọi phản hồi lại máy gọi khi nó trả lời thành công bản tin chuông. Còn trong bản tin 200 OK thứ hai do máy gọi phản hồi đến máy được gọi khi nó đã gọi thành công cuộc gọi và chấp nhận kết thúc cuộc gọi. 3xx: Phản hồi chuyền hướng 300: có nhiều lựa chọn 301: đã dời đi vĩnh viễn 302: tạm thời dời đi 305: dùng proxy 380: dịch vụ thay thế 4xx: Yêu câu thất bại 400: yêu cầu sai 401: không được quyền: chỉ dùng với cơ quan đăng kiểm , các proxy phải dùng yêu cầu cấp phép cho proxy 407 402: yêu cầu trả tiền :Dự trữ để phòng trong tương lai: Ví dụ khi bạn dùng điện thoại di động, tiền trong tài khoản của bạn gần hết, trước khi thiết lập cuộc gọi theo yêu cầu của bạn thì tổng đài sẽ thêm một thông báo:"Tài khoản của bạn sắp hệt , xin vui lòng nạp thêm để có thê tiếp tục sử dụng" 403: cấm 404: Không tìm thấy người dùng:"Thuê bao quý khách vừa gọi Không có, xin vui lòng thứ lại" 405: Phương thức không được phép 406: Không được chấp nhận 407: cần có sự cấp phép cho proxy 408: yêu cầu bị hết giờ : Không tìm thấy người dùng trong thời gian cho phép 410: đã không còn , người dùng đã từng tồn tại nhưng bây giờ không còn được sử dụng nữa:"Thuê bao quý khách vừa gọi hiện đang tạm khóa, mong quý khách vui lòng gọi lại sau" 413: Đơn vị yêu cầu quá lớn: "cuộc gọi không thể thực hiện được" 414: URI của yêu cầu quá tải :"mạng quá tải" 415: kiểu phương tiện không được hỗ trợ: ví dụ : tin nhắn đa phương tiện không thể gửi đến và nhận từ một số máy di động không hỗ trơn GPRS 416: giản đồ URI không được hỗ trợ 420: phần mở rộng không đúng: Sử dụng phần mở rộng của giao thức SIP không đúng nên máy chủ không hiểu được 421: Yêu cầu có phần mở rộng 423: Quãng quá ngắn 480: tạm thời không hoạt động 481: cuộc gọi/giao dịch không tồn tại 482: phát hiện thấy lặp 483: quá nhiều chặng trung tuyến 484:địa chỉ không hoàn chỉnh 485: tối nghĩa 486: đang bận 487: yêu cầu bị chấm dứt 488: Không được chấp nhận tại đây 491: yêu cầu đang chờ 493: không thể giải mã được : Không thể giải mã phần thân của S/MIME 5xx: Lỗi máy chủ 500: lỗi bên trong máy chủ 501: chưa khai báo: Phương thức yêu cầu SIP này chưa đựơc khai báo ở đây 502: gateway sai 503: dịch vụ không có 505: phiên bản không được hỗ trợ: Máy chủ không hỗ trợ giao thức SIP này 513: thông điệp quá lớn [...]... Ngoài ra SIP còn có các mô hình hoạt động liên mạng với SS7 (đến PSTN) hoặc là liên mạng với chồng giao thức H.323 B.Các giao thức trong SIP Các giao thức khác của IÈT có thể sử dụng để xây dựng những ứng dụng SIP SIP có thể hoạt động cùng với nhiều giao thức như : − RSVP ( Reource Revervation Protocol ) : Giao thức chiếm trước tài nguyên mạng − RTP ( Real-time tranpsport Protocol ) : Giao thức vận... protocol ) : Giao thức truyền siêu văn bản Là một trong năm giao thức chuẩn về mạng Internet, được dùng để liên hệ thông tin giữa Máy cung cấp dịch vụ (Web server) và Máy sử dụng dịch vụ (Web client) là giao thức Client/Server dùng cho World Wide Web-WWW, HTTP là một giao thức ứng dụng của bộ giao thức TCP/IP (các giao thức nền tảng cho Internet) Cấu trúc của HTTP Message HTTP là một giao thức kiểu client/server;... Giao thức mô tả phiên kết nối đa phương tiện Là giao thức cho phép client chia sẻ thông tin về phiên kết nối cho các client khác Nó đóng một vai trò quan trọng trong VoIP 1.Mô tả SDP: SDP không phải là một giao thức lớp vận chuyển, nó không thực sự vận chuyển dữ liệu giữa các client mà nó chỉ thiết lập cấu trúc thông tin về các thuộc tính của luồng dữ liệu, dữ liệu thực sự được truyền đi bởi các giao. .. đâu 606: Không được chấp nhận 3.2 SIP request Request line là dòng đầu tiên của request Tên giao thức chỉ ra mục đích của request và request-URI chứa đích của request Các phương thức SIP Các phương thức SIP có thể xem như là các kiểu thông điệp Chúng xác định yêu cầu đang được tạo bởi thiết bị của người dùng (hoặc thực thể mạng trong một số trường hợp) Các phương thức SIP cơ bản hiện tại được định nghĩa... ( Real Time Streaming Protocol ) : Giao thức tạo luồng thời gian thực − SAP ( Session Advertisement Protocol ) : Giao thức thông báo phiên kết nối − SDP ( Session Description Protocol ) : Giao thức mô tả phiên kết nối đa phương tiện − MIME ( Multipurpose Internet mail Extension – Mở rộng thư tín Internet đa mục đích − HTTP ( Hypertext Transfer protocol ) : Giao thức truyền siêu văn bản − COPS (... tay khi họ đi du lịch SIP URI: người sử dụng trong môi trường SIP được định nghĩa bởi SIP Uniform Resource Identity (URI) Khuôn dạng của SIP URI tương tự như địa chỉ email, bao gồm username và domain name: sip: B@thanglong.com Trong ví dụ trước, nếu chúng ta tra cứu SIP server (điều khiển domain company.com) chúng ta sẽ tìm thấy người sử dụng có username là B URI của B có thể là SIP: b@131.160.1.112,... ( Common Open policy Service ) : Dịch vụ chính sách mở chung − OSP ( Open Settlement protocol ) : Giao thức thỏa thuận mở I.RSVP ( Reource Revervation Protocol ) : Giao thức chiếm trước tài nguyên mạng RSVP là một cơ chế báo hiệu dùng để dành riêng tài nguyên trên một mạng RSVP không phải là một giao thức định tuyến Việc quyết định tuyến do IGP (gồm cả các mở rộng TE) và CSPF Công việc của RSVP là... NTP và RTP thì được đặt trong gói RTCP bởi người gởi dữ liệu III RTSP ( Real Time Streaming Protocol ) : Giao thức tạo luồng thời gian thực Là giao thức điều khiển kiểm soát hệ thống mạng , được thiết kế sử dụng trong hệ thống giải trí và truyền thông để kiểm soát Streaming media Severs Giao thức được sử dụng để thiết lập và kiểm soát các phương tiện truyền thông giữa các điểm cuối phiên Người dùng... phương thức, một địa chỉ định danh tài nguyên (URI), và thông báo phiên bản HTTP Phương thức được xác định trên dòng đầu tiên của Request-Line HTTP định nghĩa tất cả là 8 phương thức Một HTTP server chỉ được yêu cầu hỗ trợ các phương thức GET và HEAD; nếu chúng hỗ trợ các phương thức HTTP khác, sự hỗ trợ đó phải được gắn với các quy tắc của HTTP Đặc tả HTTP cũng có các mở rộng để các phương thức khác... thông điệp PathErr hay ResvErr Thông điệp lỗi được gửi ngược dòng về phía nguồn của lỗi; một PathErr được gửi ngược dòng từ một nút xuôi dòng và một ResvErr được gửi xuôi dòng từ một nút ngược dòng II RTP ( Real Time Tranpsport Protocol ) : Giao thức vận chuyển thời gian thực RTP – từ viết tắt của Real Time Transport Protocol (Giao thức Vận chuyển Thời gian Thực) đặc tả một tiêu chuẩn định dạng gói . Giao thức SIP A .Tổng quan về giao thức SIP I .Giao thức SIP Giao thức SIP (Secssion Initiation Protocol ) là giao thức báo hiệu điều khiển lớp ứng dụng được. được thiết lập. Ngoài ra SIP còn có các mô hình hoạt động liên mạng với SS7 (đến PSTN) hoặc là liên mạng với chồng giao thức H.323. B.Các giao thức trong SIP Các giao thức khác của IÈT có thể. dụng SIP . SIP có thể hoạt động cùng với nhiều giao thức như : − RSVP ( Reource Revervation Protocol ) : Giao thức chiếm trước tài nguyên mạng . − RTP ( Real-time tranpsport Protocol ) : Giao thức