Chính vì vậy, chúng em chọn đề tài “Kiến trúc và hoạt động của SIP” nhằm tìm hiểu, nghiên cứu giao thức SIP từ đó cung cấp thêm cho người đọc kiến thức về cách hoạt động của SIP, cách tr
Trang 1
BÁO CÁO CHUYÊN ĐỀ
KIẾN TRÚC VÀ HOẠT ĐỘNG CỦA SIP Giảng viên hướng dẫn : Nguyễn Thanh Trà
Môn học : Báo hiệu và điều khiển kết nối
HÀ NỘI – 20/12/2021
Trang 2HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
KHOA VIỄN THÔNG I Độc lập – Tự do – Hạnh phúc
Hà Nội, ngày 21 tháng 11 năm 2021
ĐỀ CƯƠNG BÁO HIỆU VÀ ĐIỂU KHIỂN KẾT NỐI
Sinh viên thực hiện : Phan Đức Thuận B17DCVT347
1.2 Cấu trúc tạo nên giao thức SIP là gì?
1.3 Công dụng của giao thức SIP Tại sao nên sử dụng giao thức SIP?
1.4 Cách thức hoạt động của giao thức SIP, tính năng của giao thức SIP
2 Phan Đức Thuận Chương 2: Các yêu cầu và thuật ngữ liên quan đến giao thức SIP
2.1 Yêu cầu trong giao thức SIP là gì ? 2.2 SIP hoạt động thế nào trên Skype và các nhà cung cấp VoIP khác
2.3 Các thuật ngữ khác liên quan đến giao thức SIP 2.3.1 SIP sever
2.3.2 SIP account 2.3.3 SIP phone 2.3.4 Bộ định tuyến SIP ALG
3 Vũ Việt Hoàng Chương 3: Kiến trúc SIP architecture , Call Setup và Disconnect
giữa Sip Gateway-to-SIP Gateway
3.1 Kiến trúc của SIP Architecture
Trang 33.2 Call Setup và Disconnect giữa SIP Gateway-to-SIP Gateway
Tài liệu tham khảo:
1 https://vi.wikipedia.org
2 http://dlib.ptit.edu.vn
3 TS Đặng Thế Ngọc, TS Nguyễn Viết Đảm, TS Phạm Thị Thúy Hiền, TS Nguyễn Viết Minh, Bài
giảng công nghệ vô tuyến băng rộng, Học viện Công nghệ Bưu chính Viễn thông, NXB 2017
4 https://www.bkns.vn/giao-thuc-sip-la-gi.html
Thuận
Phan Đức Thuận
Trang 4MỤC LỤC
LỜI NÓI ĐẦU 8
CHƯƠNG I: GIỚI THIỆU CHUNG VỀ SIP 9
1.1.Giao thức SIP là gì? 9
1.2.Cấu trúc tạo nên giao thức SIP là gì? 9
1.2.1.Kiến trúc tổng quan 9
1.2.2.Thông điệp SIP (SIP messages) 10
1.3.Công dụng của giao thức SIP là gì? 13
1.4.Cách thức hoạt động của giao thức SIP, tính năng của giao thức SIP 13
1.4.1.Cách thức hoạt động của giao thức SIP 13
1.4.2.Tính năng của giao thức SIP là gì? 13
CHƯƠNG 2: CÁC YÊU CẦU VÀ THUẬT NGỮ LIÊN QUAN ĐẾN GIAO THỨC SIP 15
2.1Yêu cầu trong giao thức SIP là gì ? 15
2.2SIP hoạt động thế nào trên Skype và các nhà cung cấp VoIP khác 16
2.3Các thuật ngữ khác liên quan đến giao thức SIP 19
2.3.1SIP sever 19
2.3.2SIP account 20
2.3.3SIP phone 20
2.3.4Bộ định tuyến SIP ALG 21
CHƯƠNG 3: KIẾN TRÚC SIP ARCHITECTURE, CALL SETUP VÀ DISCONNECT GIỮA SIP GATEWAY-TO-SIP GATEWAY 23
3.1Kiến trúc của SIP Architecture 23
3.2Call Setup và Disconnect giữa SIP Gateway-to-SIP Gateway 25
TỔNG KẾT 28
TÀI LIỆU THAM KHẢO 29
Trang 5KIỂM TRA TRÙNG LẶP
Trang 6DANH MỤC CÁC TỪ VIẾT TẮT
Trang 7S/MIME Multipurpose Internet Mail Extension
Trang 8LỜI NÓI ĐẦU
Công nghệ thông tin ngày càng đóng vai trò quan trọng trong mọi lĩnh vực của đời sống đặc biệt là trong việc truyền tải thông tin Ngày nay cùng với sự phát triển của công nghệ thông tin nói chung và Internet nói riêng đã làm thay đổi một phần thế giới
Sự phát triển của Internet tạo ra sự gần gũi giữa các vùng miền các quốc gia khác nhau
về khoa học công nghệ cũng như nhu cầu thông tin của xã hội
Nhu cầu trao đổi thông tin giữa mọi người đang ùng nổ Mạng Internet tốc độ cao giúp trao đổi đa phương tiện dễ dàng hơn tác động mạnh mẽ hơn và làm thay đổi các phương thức truyền thông thông tin truyền thống Các ứng dụng truyền thông trên nền tảng Internet đang phát triển rất mạnh mẽ
Để đáp ứng sự phát triển này các giao thức và tiêu chuẩn Internet mới cũng được giới thiệu với mục đích tạo ra chất lượng dịch vụ tốt hơn Và sự ra đời của SIP cũng không ngoại lệ
Từ khi tổ chức IETF (Internet Enginnering Task Force) công bố phiên bản đầu tiên của SIP vào năm 1999 SIP đã trải qua nhiều thay đổi và cải tiến Và phiên bản gần đây nhất là từ năm 2002 Hiện nay có hàng trăm nhà sản xuất đang bắt đầu kinh doanh máy chủ và điện thoại có khả năng dùng giao thức SIP SIP đóng một vai trò quan trọng trong nhiều ứng dụng đa phương tiện như nhắn tin nhanh video trò chơi trực tuyến v.v
Cụ thể gần đây cộng đồng VoIP đã phân loại SIP là giao thức chính để kiểm soát việc truyền tín hiệu qua Internet Bên cạnh các ứng dụng điện thoại Internet SIP hiện cũng được triển khai trong lĩnh vực thương mại điện tử
Chính vì vậy, chúng em chọn đề tài “Kiến trúc và hoạt động của SIP” nhằm tìm hiểu, nghiên cứu giao thức SIP từ đó cung cấp thêm cho người đọc kiến thức về cách hoạt động của SIP, cách trao đổi thông tin giữa các người sử dụng với nhau thông qua việc trao đổi âm thanh, hình ảnh và gởi file dữ liệu dựa trên giao thức này
Trang 9CHƯƠNG I: GIỚI THIỆU CHUNG VỀ SIP 1.1 Giao thức SIP là gì?
Giao thức SIP - Session Initiation Protocol là một giao thức báo hiệu được sử dụng
để thiết lập một phiên giao dịch trực tuyến giữa 2 hoặc nhiều người tham gia, sửa đổi phiên đó và cuối cùng chấm dứt phiên đó Nó đã tìm thấy việc sử dụng chủ yếu của nó trong thế giới của IP Telephony Việc SIP là một tiêu chuẩn mở đã tạo ra sự quan tâm lớn trong thị trường điện thoại và các nhà sản xuất vận chuyển điện thoại dựa trên SIP
đã chứng kiến sự tăng trưởng to lớn trong lĩnh vực này
Giao thức Khởi tạo Phiên (SIP) là một giao thức điều khiển lớp ứng dụng có thể khởi tạo sửa đổi và kết thúc một phiên đa phương tiện như VoIP SIP cũng có thể
"mời" nhiều ên tham gia một phiên hiện có chẳng hạn như hội nghị đa hướng Phương tiện có thể được thêm vào hoặc xóa khỏi một phiên hiện có SIP hỗ trợ các dịch vụ ánh
xạ tên và định hướng ngược một cách minh ạch để người dùng có thể duy trì mã định danh có thể nhìn thấy ên ngoài cho dù họ có iết về mạng hay không
SIP hỗ trợ năm vấn đề thiết lập và kết thúc truyền thông đa phương tiện
• Vị trí người dùng: xác định hệ thống đầu cuối được sử dụng để liên lạc người dùng có thể di chuyển đến các vị trí khác nhau và truy cập hệ thống
từ xa Điều này tương tự như các dịch vụ được cung cấp ởi RAS trong H.323
• Sự sẵn sàng của người sử dụng: xác định sự sẵn sàng của bên nhận tham gia vào truyền thông
• Khả năng của người dùng: xác định các phương tiện và thông số để sử dụng SIP ằng giao thức SDP để thống nhất các thông số truyền thông
• Thiết lập phiên: “gọi”, thiết lập các thông số phiên gọi ở cả bên gọi và bên nhận theo báo hiệu trực tiếp hay thông qua proxy server
• Quản lý phiên gọi: bao gồm chuyển và kết thúc phiên, thay đổi các thông
số phiên và gọi các dịch vụ
1.2 Cấu trúc tạo nên giao thức SIP là gì?
Giao thức SIP dựa trên văn bản và có sự tương đồng đáng kể với giao thức HTTP
Các tin nhắn dựa trên văn bản và cơ chế phản hồi yêu cầu giúp xử lý sự cố dễ dàng hơn Việc truyền dữ liệu thực tế được thực hiện bởi Giao thức điều khiển truyền (TCP) hoặc Giao thức gói dữ liệu người dùng (UDP) trên lớp 5 của mô hình OSI Giao thức
mô tả phiên (hoặc SDP) kiểm soát giao thức nào được sử dụng
Trang 10Các tin nhắn SIP mô tả danh tính của những người tham gia cuộc gọi và cách người tham gia có thể liên lạc qua mạng IP Đóng gói bên trong các tin nhắn SIP đôi khi chúng ta cũng có thể thấy một khai báo SDP SDP (Giao thức mô tả phiên) sẽ xác định loại kênh truyền thông sẽ được thiết lập cho phiên – thông thường, điều này sẽ khai báo loại codec nào có sẵn và cách các công cụ truyền thông có thể tiếp cận nhau qua mạng IP
Khi quá trình trao đổi thông điệp thiết lập này được hoàn thành, phương tiện được trao đổi bằng một giao thức khác, điển hình là RTP (Giao thức truyền thời gian thực)
SIP được phát triển bởi IETF và được xuất bản với tên RFC 3261, và tính linh hoạt của nó đã cho phép nó thay thế gần như hoàn toàn giao thức H.323 trong thế giới VoIP
Cấu trúc chung của giao thức SIP bao gồm ba lớp:
o Lớp trên là lớp giao dịch người sử dụng TU (Transaction User layer) Đây
là phần xử lý cơ bản trong các thành phần của SIP như UA core, proxy core
o Tiếp theo là lớp giao dịch Transaction layer Lớp này làm nhiệm vụ gửi và nhận các thông điệp SIP một cách tin cậy Khi SIP chạy trên một giao thức vận chuyển không tin cậy như UDP, lớp này sẽ phát lại các thông điệp tùy thuộc vào các trạng thái bị hạn chế
o Bên dưới là lớp giao vận Transport layer Giao thức SIP có thể chạy trên nhiều giao thức vận chuyển không tin cậy (như UDP) hoặc tin cậy (TCP, SCTP), cũng như các giao thức bảo mật (TLS trên TCP)
Một giao dịch bao gồm một yêu cầu được UAC gởi đi và tất cả các đáp ứng nhận được cho đáp ứng đó Tiêu biểu là trường hợp yêu cầu INVITE được gởi
Một cuộc hội thoại thể hiện mối quan hệ giữa hai UA trong một khoảng thời gian
Các cuộc hội thoại được ao gồm trong một phiên cuộc gọi Phiên nhiều thành phần có thể có nhiều hơn một hội thoại một hội thoại cho hai thành phần
Các thành phần tham gia vào một hệ thống dựa trên SIP sẽ áo hiệu cho nhau bằng cách trao đổi các bản tin SIP Đây là ý tưởng cơ ản và rõ ràng nhất của giao thức SIP
Bằng cách phân tích cấu trúc của các bản tin ta có thể xử lý các cuộc gọi một cách dễ dàng Các thông điệp SIP có cấu trúc chung gồm 3 phần đó là các thông điệp dựa trên text: request line, header, body.( Mô tả ở hình 1)
Phần request line gồm các thành phần: phương thức yêu cầu, địa chỉ nguồn URI (universal resource identifier) yêu cầu thiết lập phiên, phiên bản SIP
Trang 11Phần header gồm một hoặc nhiều header của các giao thức chỉ định như TCP hoặc UDP, địa chỉ của nơi gửi, chiều dài của phần body
Một dòng trống theo sau là phần body có thể tùy chọn chứa nội dung gửi Phần thân của message chứa gói tin SDP mô tả chi tiết phiên truyền thông
Hình 1: Cấu trúc của thông điệp SIP Các phương thức chính để quản lí một phiên cơ bản SIP:
sử dụng để mời người dùng tham gia cuộc gọi Tin nhắn này chứa thông tin cơ bản như ID người gọi và người gọi.
ACK: Một phiên SIP đơn giản bắt đầu từ phương thức INVITE Khi người được
gọi xác nhận rằng đã nhận được lời gọi INVITE, sẽ có một thông điệp trả lời với phương thức ACK Thông điệp này chứa đặc tả SDP về các thông số để thiết lập phiên truyền thông
OPTIONS: Thông điệp được gởi để truy vấn các khả năng của hai bên
BYE: Kết thúc cuộc gọi giữa hai người dùng Thông điệp này không cần có phản
hồi từ đối tác
REGISTER: Cung cấp sự ánh xạ phân giải địa chỉ Ví dụ như để server biết vị trí
của người sử dùnng khác
CANCEL: Kết thúc một yêu cầu sắp xãy ra nhưng không kết thúc cuộc gọi
INFO: Được sử dụng để mang thông tin giữa cuộc gọi INFO không được dùng
để thay đổi trạng thái của một cuộc gọi đã ổn định
Có hai loại thông điệp SIP: yêu cầu và đáp ứng, tương ứng với thông điệp UAC (User Agent Client) gởi đến UAS (User Agent Server) và thông điệp UAS trả lời UAC Hai thông điệp này hoàn toàn khác nhau Các bản tin yêu cầu được gửi đi để thông báo cho người nhận thực hiện các công việc cụ thể, các bản tin phản hồi được gửi lại để báo cáo kết quả của các công việc đó
Trang 12Về mặt cấu trúc, hai thông điệp khác nhau ở dòng bắt đầu Thông báo yêu cầu cho biết phương thức và URI mà yêu cầu đã được gửi đến Thông báo phản hồi dòng bắt đầu chứa mã phản hồi mà không có URI vì nó chỉ trả về địa chỉ chính xác cho yêu cầu
Các mã phản hồi phổ biến nhất:
100 Trying Yêu cầu đã được nhận trên một máy chủ trong ước tiếp theo Mã này
được trả về bởi một máy chủ proxy hoặc máy chủ trung gian khác trên đường dẫn báo hiệu cuộc gọi
180 Ringing
181 Call Forwarding Nếu một proxy server trả về mã này, cũng có thể nhận diện
nơi mà nó đang chuyển cuộc gọi trong phần thân của thông điệp này
182 Queued for Service Các ứng dụng có thể trì hoãn việc trả lời cuộc gọi cho đến
khi nó thực hiện các cuộc gọi được xếp hàng đợi
183 Session Progress
200 OK Yêu cầu đã được thực hiện thành công
400 Bad request Lỗi cú pháp thông điệp
401 User yêu cầu xác thực trước khi thực hiện yêu cầu này
403 Forbidden Nhận được khi cố gắng gọi một số không được chấp nhận từ thuê
bao của chúng ta
404 Không tìm thấy user
408 Request time-out
500 Lỗi server
600 Busy
603 Decline
604 Does not exist
Phần đầu header mang thông tin cần thiết cho việc truyền thông điệp cũng như xử
lý thông điệp Header chỉ hoặc xuất hiện ở thông điệp yêu cầu hoặc yêu cầu đáp ứng
Phần thân body có thể có hoặc không Khi thông điệp có phần thân thì nó sẽ được
mô tả trong phần header trường Content-Type Phần thân có ý nghĩa khác nhau phụ thuộc vào kiểu của nó Đối với các ứng dụng khác nhau của SIP, phần thân sẽ được xử
lý khác nhau Ví dụ, phần thân có thể chứa hình ảnh của thành phần tham gia trong phiên hoặc các thông tin cần thiết của phiên
Thông thường trong quá trình xử lý thiết lập phiên các bên liên quan sẽ trao đổi thông tin phiên trong phần nội dung của bản tin SIP Thông tin này thường được mô
tả bằng thông báo SDP
Trang 131.3 Công dụng của giao thức SIP là gì?
SIP cho phép mọi người trên khắp thế giới giao tiếp bằng máy tính và thiết bị di động của họ qua internet Đây là một phần quan trọng của Internet Telephony và cho phép bạn khai thác các lợi ích của VoIP (thoại qua IP) và có trải nghiệm giao tiếp phong phú Nhưng lợi ích thú vị nhất mà chúng tôi nhận được từ SIP là cắt giảm chi phí liên lạc
Các cuộc gọi (thoại hoặc video) giữa người dùng SIP là miễn phí trên toàn thế giới
Không có ranh giới và không có luật pháp hoặc chi phí hạn chế Ngay cả các ứng dụng SIP và địa chỉ SIP cũng được lấy miễn phí
SIP là một giao thức cũng rất mạnh mẽ và hiệu quả theo nhiều cách Nhiều tổ chức
sử dụng SIP cho giao tiếp bên trong và bên ngoài của họ, tập trung quanh một tổng đài
❖ Một số ưu điểm của SIP:
− Đơn giản: giao thức SIP nhỏ và đơn giản nhất trong VoIP stack SIP được coi là một công cụ đơn giản cho phép các thiết bị đầu cuối thông minh, các gateway, các
xử lý và các client tạo và triển khai SIP
− Khả năng mở rộng: kiến trúc điểm – điểm (peer-to-peer) cho phép mở rộng với chi phí thấp So với các giao thức khác các yêu cầu về phần cứng và phần mềm khi thêm một thành viên vào hệ thống được giảm thiểu đáng kể
− Sự phân tán chức năng: SIP cho phép nhiều chức năng trong mỗi thành phần
− Các thay đổi đối với một thành phần có rất ít ảnh hưởng đến phần còn lại của hệ thống
1.4 Cách thức hoạt động của giao thức SIP, tính năng của giao thức SIP
Thực tế, bạn nhận được một địa chỉ SIP, bạn nhận được một máy khách SIP trên máy tính hoặc thiết bị di động của bạn, cộng với bất cứ điều gì khác là cần thiết Sau
đó, bạn cần cấu hình máy khách SIP của bạn Có một số công cụ kỹ thuật để thiết lập, nhưng các trình hướng dẫn cấu hình hiện nay làm cho mọi thứ thực sự dễ dàng Chỉ cần có thông tin xác thực SIP của bạn và điền vào các trường bất cứ khi nào cần và bạn
sẽ được đặt trong một phút
Giao thức SIP bao gồm các tính năng sau:
− Lời mời SIP được sử dụng để tạo phiên và mang mô tả phiên cho phép người tham gia đồng ý về một tập hợp các loại phương tiện tương thích Theo cách này,
Trang 14SIP không bị hạn chế đối với bất kỳ loại phương tiện cụ thể nào và do đó có thể
xử lý phạm vi mở rộng của các công nghệ truyền thông
− SIP cho phép người dùng di chuyển thông qua một cơ chế cho phép các yêu cầu được ủy quyền hoặc chuyển hướng đến vị trí hiện tại của người dùng Người dùng có thể đăng ký vị trí hiện tại của họ với máy chủ nhà của họ
− SIP hỗ trợ xác thực end-to-end và hop-by-hop, cũng như mã hóa đầu cuối bằng
S / MIME
− Các thành viên trong phiên SIP có thể giao tiếp bằng cách sử dụng các mối quan
hệ đa hướng hoặc unicast hoặc kết hợp cả hai Ngoài ra, SIP độc lập với giao thức vận chuyển lớp thấp hơn, cho phép nó tận dụng các giao thức vận chuyển mới
− Phần mềm thực hiện giao thức SIP cơ bản có thể được mở rộng với các khả năng
bổ sung và đang được tích cực khai thác cho nhiều ứng dụng truyền thông