Your SlideShare is downloading. ×
bctntlvn (56).pdf
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

bctntlvn (56).pdf

668

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
668
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
37
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Đào Ngọc AnhNGHIÊN CỨU GIAO THỨC TRONG MẠNG VOIP KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Điện tử - Viễn thông HÀ NỘI - 2008
  • 2. ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Đào Ngọc AnhNGHIÊN CỨU GIAO THỨC TRONG MẠNG VOIP KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Điện tử - Viễn thông Cán bộ hướng dẫn: Th.S Nguyễn Quốc Tuấn HÀ NỘI - 2008
  • 3. LỜI CẢM ƠN Trước hết em xin gửi tới thầy giáo Nguyễn Quốc Tuấn – nguyên Chủ nhiệm Bộmôn Hệ thống Viễn thông , lời cảm ơn chân thành và sâu sắc đã trực tiếp hướng dẫn ,chỉ bảo tận tình trong suốt quá trình em làm luận văn. Em cũng xin chân thành cảm ơn các thầy cô giáo trong Trường Đại học CôngNghệ - Đại học Quốc Gia Hà Nội đã hết lòng dạy bảo, giúp đỡ em trong những nămhọc Đại Học, giúp em có những kiến thức và kinh nghiệm quý báu trong chuyên mônvà cuộc sống. Những hành trang đó là một tài sản vô giá nâng bước cho em tới đượcvới những thành công trong tương lai. Cuối cùng, em xin cảm ơn những người thân trong gia đình và bạn bè đã giúp đỡ,động viên em hoàn thành luận văn này. Hà nội, tháng 05 năm 2008 Sinh viên
  • 4. TÓM TẮT NỘI DUNG Với sự phát triển nhảy vọt của mạng chuyển mạch gói IP hiện nay không chỉ đemlại cho chúng ta những dịch vụ mới đa dạng mà còn là cơ hội cải thiện các dịch vụviễn thông trước kia với chất lượng tốt hơn và giá thành rẻ hơn. Đã từ lâu, mạngchuyển mạch kênh ghép phân kênh theo thời gian PSTN đã có một vai trò vô cùngquan trọng với sự phát triển của xã hội. Bên cạnh những ưu điểm về chất lượng dịchvụ tốt, vùng dịch vụ rộng lớn trên khắp mọi lãnh thổ,… thì mạng PSTN cũng bộc lộnhiều hạn chế như số lượng các dịch vụ hạn chế, sử dụng tài nguyên đường truyềnkhông tối ưu, giá thành cao. Trên cơ sở đó, mạng VoIP ra đời và ngày càng đáp ứng tốt hơn các yêu cầu đặt ranhư chất lượng dịch vụ, giá thành, số lượng tích hợp các dịch vụ thoại lẫn phi thoại.Cũng như các công nghệ ra đời trong thời gian gần đây, thì vấn đề Giao thức là đặcbiệt quan trọng. Việc nắm chắc Giao thức là chìa khóa thành công của việc triển khaimỗi một công nghệ mới vào thực tế. Chính vì vậy, trong nội dung của bài Luận văn tốtnghiệp này, em xin được giới thiệu về “Giao thức sử dụng trong mạng VoIP”. Bài luậnvăn sẽ gồm các nội dung chính như sau: Chương 1: Tổng quan về mạng VoIP. Chương 2: Các giao thức truyền tải trong VoIP. Chương 3: Giao thức báo hiệu VoIP. Một vấn đề đặc biệt quan trong khi mỗi công nghệ, một giao thức mới được sinhra là vần đề tương thích với các công nghệ và giao thức trước đó. Đó cũng là một trongnguyên nhân quyết định sự sống còn của mạng VoIP được đề cập tới tại: Chương 4: Kết nối mạng VoIP và PSTN. Và phần cuối cùng trong bài Luận văn tốt nghiệp: Chương 5: Khảo sát giao thức cuộc gọi VoIP SIP – PSTN trên thực tế. Đây là một minh chứng rõ nét về việc triển khai các giao thức VoIP đã nghiêncứu trong toàn bộ nội dung bài Luân văn tốt nghiệp vào bài toán viễn thống thực tế.
  • 5. MỤC LỤCChương 1. Tổng quan về mạng VoIP ........................................................................... 2 1.1. Tổng quan về mạng VoIP .................................................................................. 2 1.2. Đặc tính của mạng VoIP ................................................................................... 4 1.2.1. Ưu điểm ..................................................................................................... 4 1.2.2. Nhược điểm................................................................................................ 5 1.3. Yêu cầu chất lượng đối với VoIP ...................................................................... 6Chương 2. Các giao thức truyền tải trong VoIP............................................................ 7 2.1. Giao thức IP ...................................................................................................... 7 2.1.1. Giao thức IP phiên bản 4 (IPv4) ................................................................. 7 2.1.2. Giao thức IP phiên bản 6 (IPv6) ............................................................... 11 2.2. Giao thức TCP/IP ............................................................................................ 12 2.3. Giao thức UDP ................................................................................................ 17 2.4. Giao thức SCTP .............................................................................................. 17 2.5. Giao thức RTP ................................................................................................ 22 2.6. Giao thức RTCP .............................................................................................. 28Chương 3. Giao thức báo hiệu VoIP .......................................................................... 31 3.1. Giao thức báo hiệu H.323................................................................................ 31 3.1.1. Các thành phần trong mạng ...................................................................... 31 3.1.2. Giao thức H.323 ....................................................................................... 35 3.1.3. Thiết lập cuộc gọi VoIP sử dụng giao thức H.323 .................................... 40 3.2. Giao thức SIP .................................................................................................. 44 3.2.1. Các thành phần trong mạng SIP................................................................ 45 3.2.2. Bản tin SIP ............................................................................................... 47 3.2.3. Mô tả cuộc gọi SIP ................................................................................... 52 3.3. So sánh giữa giao thức H.323 và SIP............................................................... 54
  • 6. Chương 4. Kết nối giữa mạng VoIP và PSTN ............................................................ 56 4.1. Mạng báo hiệu SS7 ......................................................................................... 56 4.1.1. Các thành phần trong mạng báo hiệu SS7 ................................................. 56 4.1.2. Liên kết trong mạng SS7 .......................................................................... 57 4.1.3. Định tuyến trong mạng SS7 ...................................................................... 58 4.1.4. Giao thức trong mạng SS7 ........................................................................ 59 4.1.5. Các bước thiết lập cuộc gọi trong mạng SS7 ............................................ 64 4.2. Giao thức Sigtran ............................................................................................ 65 4.2.1. M2UA/ M2PA.......................................................................................... 66 4.2.2. M3UA ...................................................................................................... 67 4.2.3. SUA ......................................................................................................... 68 4.2.4. Kết nối mạng VoIP với mạng PSTN......................................................... 69Chương 5. Khảo sát giao thức cuộc gọi VoIP SIP – PSTN trên thực tế ...................... 74 5.1. Giới thiệu kiến trúc mạng VoIP được nghiên cứu ............................................ 74 5.2. Giới thiệu chương trình Wireshark................................................................ 75 5.3. Khảo sát giao thức cuộc gọi VoIP SIP – PSTN trên thực tế ............................. 76
  • 7. DANH MỤC CÁC TỪ VIẾT TẮTKí hiệu Viết đầy đủ Ý nghĩaviết tắt VoIP Voice over IP Công nghệ truyền thoại trên mạng IP Public SwitchPSTN Mạng điện thoại công cộng Telephone Network Pulse-Code PCM Bộ mã hóa mã xung Modulation Simple NetworkSNMP Giao thức quản trị mạng đơn giản Management Protocol Session Initiation SIP Giao thức thiết lập phiên Protocol RTP Real Time Protocol Giap thức thời gian thực Real Time ControlRTCP Giap thức điều khiển thời gian thực Protocol Asynchronous ATM Chế độ truyền không đồng bộ Transfer Mode QoS Quality of Service Chất lượng dịch vụ ToS Type of Service Kiểu dịch vụ IP Internet Protocol Giao thức Internet IPv4 IP version 4 Giao thức Internet phiên bản 4 IPv6 IP version 6 Giao thức Internet phiên bản 6 TCP Transmission Control Giao thức điều khiển truyền thông tin
  • 8. Protocol User DatagramUDP Giao thức Datagram người dùng Protocol Stream ControlSCTP Giao thức truyền điều khiển luồng Transmission Protocol International Telecommunication Hiệp hội viễn thông quốc tếITU-T Union- - Bộ phận chuẩn viễn thông Telecommunication Standardization Sector Register AdmissionRAS Báo hiệu đăng kí, cấp phép, thông tin trạng thái Status SessionSAP Announcement Giao thức thông báo phiên Protocol Session DescriptionSDP Giao thức mô tả phiên Protocol Signaling SystemSS7 Hệ thống báo hiệu số 7 No.7SSP Switch Service Point Điểm dịch vụ chuyển mạchSCP Signal Control Point Điểm điều khiển báo hiệuSTP Signal Tranfer Point Điểm truyền báo hiệuMTP Message Tranfer Part Phần truyền bản tin TransactionTCAP Capabilities Phần ứng dụng cung cấp giao dịch Application Part
  • 9. TUP Telephone User Part Phần người dùng điện thoạiISUP ISDN User Part Phần người dùng ISDN Integrated ServicesISDN Mạng tích hợp dịch vụ số Digital Network Signaling ConnectionSCCP Phần điều khiển kết nối báo hiệu Control PartM2UA MTP2 User Adapter Bộ chuyển đổi người dùng MTP2 MTP L2 Peer-to-PeerM2PA Bộ chuyển đổi bản tin lớp 2 ngang hàng AdapterM3UA MTP3 User Adapter Bộ chuyển đổi người dùng MTP3IUA ISDN User Adapter Bộ chuyển đổi người dùng ISDNSUA SCCP User Adapter Bộ chuyển đổi người dùng SCCP
  • 10. MỞ ĐẦU Mạng VoIP ra đời như là một cuộc các mạng của hệ thống viễn thông và xã hội.Với những ưu điểm vượt trội, mạng VoIP đã chứng tỏ được sức sống và tính thực tiễncao của nó. Sự phát triển quá nhanh của mạng VoIP cũng đặt ra một vấn đề nan giải đólà việc chuẩn hóa giữa các giao thức VoIP của nhiều nhà phát triển khác nhau. Màtrong đó có hai giao thức được nhắc tới nhiều nhất đó là H.323 của ITU-T và SIP củaIETF. Như một tất yếu khách quan, mạng VoIP sẽ được chia thành nhiều miền giaothức khác nhau. Nên vấn đề quan trọng để có thể triển khai được mạng VoIP vào thựctế đó là phải hiểu được bản chất của các giao thức VoIP và quan trọng nhất đó là cácgiao thức báo hiệu sử dụng trong VoIP. Tuy vâyh mới là điều kiện cần cho sự ra đờicòn vấn đề then chốt cho sự tồn tại và phát triển của mạng VoIP lại là vấn đề kết nốivới hệ thống viễn thông vốn có. Và cụ thể là vấn đề kết nối giữa mạng VoIP và mạngPSTN. Và đây cũng là hai nội dung chính của bài Luân văn tốt nghiệp này. Trên cơ sở nhận thức rõ sự quan trọng cũng như cách thức hoạt động của giaothức trong mạng VoIP, thì phương pháp nghiên cứu của em trong nội dung Luận vănchủ yếu đi sâu nghiên cứu thông qua tài liệu quy chuẩn về Giao thức VoIP (RFC củaIETF, các tài liệu chuẩn của ITU-T); đồng thời tham chiếu đến các tài liệu chuyên mônsâu về VoIP để làm rõ các vấn đề cần giải quyết. Từ những hiểu biết nghiên cứu lý thuyết khá sâu về chuyên môn, em sẽ thamchiếu với mô hình thực tế. Từ đó làm rõ các vấn đề vướng mắc mà khi nghiên cứu lýthuyết chưa thể giải quyết và lảm rõ được. 1
  • 11. Chương 1. Tổng quan về mạng VoIP1.1. Tổng quan về mạng VoIP Đầu năm 1995 công ty VOCALTEC đưa ra thị trường sản phẩm phần mềm thựchiện cuộc thoại qua Internet đầu tiên trên thế giới. Sau đó có nhiều công ty đã tham giavào lĩnh vực này. Tháng 3 năm 1996, VOLCALTEC kết hợp với DIALOGIC tung rathị trường sản phẩm kết nối mạng PSTN và Internet. Hiệp hội các nhà sản xuất thoạiqua mạng máy tính đã sớm ra đời và thực hiện chuẩn hoá dịch vụ thoại qua mạngInternet. Việc truyền thoại qua internet đã gây được chú ý lớn trong những năm qua vàđã dần được ứng dụng rộng rãi trong thực tế. Có thể định nghĩa: Voice over Internet Protocol (VoIP) là một công nghệ chophép truyền thoại sử dụng giao thức mạng IP, trên cơ sở hạ tầng sẵn có của mạngInternet. VoIP là một trong những công nghệ viễn thông đang được quan tâm nhất hiệnnay không chỉ đối với các nhà khai thác, các nhà sản xuất mà còn cả với người sử dụngdịch vụ. VoIP có thể vừa thực hiện cuộc gọi thoại như trên mạng điện thoại kênhtruyền thống (PSTN) đồng thời truyền dữ liệu trên cơ sở mạng truyền dữ liệu. Nhưvậy, nó đã tận dụng được sức mạnh và sự phát triển vượt bậc của mạng IP vốn chỉđược sử dụng để truyền dữ liệu thông thường. Để có thể hiểu được những ưu điểm của VoIP mang lại, trước hết chúng ta đi vàonghiên cứu sự khác biệt giữa mạng kênh PSTN hiện có với mạng chuyển mạch gói nóichung và mạng VoIP nói riêng. Kỹ thuật chuyển mạch kênh (Circuit Switching): Một đặc trưng nổi bật của kĩthuật này là hai trạm muốn trao đổi thông tin với nhau thì giữa chúng sẽ được thiết lậpmột “ kênh” (circuit) cố định, kênh kết nối này được duy trì và dành riêng cho hai trạmcho tới khi cuộc truyền tin kết thúc. Thông tin cuộc gọi là trong suốt. Quá trình thiếtlập cuộc gọi tiến hành gồm 3 giai đoạn:  Giai đoạn thiết lập kêt nối: Thực chất quá trình này là liên kết các tuyến giữa các trạm trên mạng thành một tuyến (kênh) duy nhất dành riêng cho cuộc gọi. Kênh này đối với PSTN là 64kb/s (do bộ mã hóa PCM có tốc độ lấy mẫu tiếng nói 8kb/s và được mã hóa 8 bit).  Giai đoạn truyền tin: Thông tin cuộc gọi là trong suốt. Sự trong suốt thể hiện qua hai yếu tố: thông tin không bị thay đổi khi truyền qua mạng và độ trễ nhỏ.  Giai đoạn giải phóng (huỷ bỏ) kết nối: Sau khi cuộc gọi kết thúc, kênh sẽ được giải phóng để phục vụ cho các cuộc gọi khác. 2
  • 12. Qua đó, ta nhận thấy mạng chuyển mạch kênh có những ưu điểm nổi bật nhưchất lượng đường truyền tốt, ổn định, có độ trễ nhỏ. Các thiết bị mạng của chuyểnmạch kênh đơn giản, có tính ổn định cao, chống nhiễu tốt. Nhưng ta cũng không thểkhông nhắc tới những hạn chế của phương thức truyền dữ liệu này như:  Sử dụng băng thông không hiệu quả: Tính không hiệu quả này thể hiện qua hai yếu tố. Thứ nhất, độ rộng băng thông cố định 64k/s. Thứ hai là kênh là dành riêng cho một cuộc gọi nhất định. Như vậy, ngay cả khi tín hiệu thoại là “lặng” (không có dữ liệu) thì kênh vẫn không được chia sẻ cho cuộc gọi khác.  Tính an toàn: Do tín hiệu thoại được gửi nguyên bản trên đường truyền nên rất dễ bị nghe trộm. Ngoài ra, đường dây thuê bao hoàn toàn có thể bị lợi dụng để an trộm cước viễn thông.  Khả năng mở rộng của mạng kênh kém: Thứ nhất là do cơ sở hạ tầng khó năng cấp và tương thích với các thiết bị cũ. Thứ hai, đó là hạn chế của hệ thống báo hiệu vốn đã được sử dụng từ trước đó không có khả năng tùy biến cao. Kỹ thuật chuyển mạch gói (Packet Switching): Trong chuyển mạch gói mỗibản tin được chia thành các gói tin (packet), có khuôn dạng được quy định trước.Trong mỗi gói cũng có chứa thông tin điều khiển: địa chỉ trạm nguồn, địa chỉ trạmđích và số thứ tự của gói tin,… Các thông tin điều khiển được tối thiểu, chứa các thôngtin mà mạng yêu cầu để có thể định tuyến được cho các gói tin qua mạng và đưa nó tớiđích. Tại mỗi node trên tuyến gói tin được nhận, nhớ và sau đó thì chuyển tiếp cho tớichạm đích. Vì kỹ thuật chuyển mạch gói trong quá trình truyền tin có thể được địnhtuyến động để truyền tin. Điều khó khăn nhất đối với chuyển mạch gói là việc tập hợpcác gói tin để tạo bản tin bản đầu đặc biệt là khi mà các gói tin được truyền theo nhiềucon đường khác nhau tới trạm đích. Chính vì lý do trên mà các gói tin cần phải đượcđánh dấu số thứ tự, điều này có tác dụng, chống lặp, sửa sai và có thể truyền lại khihiên tượng mất gói xảy ra. Các ưu điểm của chuyển mạch gói:  Mềm dẻo và hiệu suất truyền tin cao: Hiệu suất sử dụng đường truyền rất cao vì trong chuyển mạch gói không có khái niệm kênh cố định và dành riêng, mỗi đường truyền giữa các node có thể được các trạm cùng chia sẻ cho để truyền tin, các gói tin sắp hàng và truyền theo tốc độ rất nhanh trên đường truyền. 3
  • 13.  Khả năng tryền ưu tiên: Chuyển mạch gói còn có thể sắp thứ tự cho các gói để có thể truyền đi theo mức độ ưu tiên. Trong chuyển mạch gói số cuộc gọi bị từ chối ít hơn nhưng phải chấp nhận một nhược điểm vi thời gian trễ sẽ tăng lên.  Khả năng cung cấp nhiều dịch vụ thoại và phi thoại.  Thích nghi tốt nếu như có lỗi xảy ra: Đặc tính này có được là nhờ khả năng định tuyến động của mạng. Bên cạnh những ưu điểm thì mạng chuyển mạch gói cũng bộ lộ những nhượcđiểm như:  Trễ đường truyền lớn: Do đi qua mỗi trạm, dữ liệu được lưu trữ, xử lý trước khi được truyền đi.  Độ tin cậy của mạng gói không cao, dễ xảy ra tắc nghẽn, lỗi mất bản tin  Tính đa đường có thể gây là lặp bản tin, loop làm tăng lưu lượng mạng không cần thiết.  Tính bảo mật trên đường truyền chung là không cao.1.2. Đặc tính của mạng VoIP1.2.1. Ưu điểm  Giảm chi phí: Đây là ưu điểm nổi bật của VoIP so với điện thoại đường dài thông thường. Chi phí cuộc gọi đường dài chỉ bằng chi phí cho truy nhập Internet. Một giá cước chung sẽ thực hiện được với mạng Internet và do đó tiết kiệm đáng kể các dịch vụ thoại và fax. Sự chia sẻ chi phí thiết bị và thao tác giữa những người sử dụng thoại và dữ liệu cũng tăng cường hiệu quả sử dụng mạng. Đồng thời kỹ thuật nén thoại tiên tiến làm giảm tốc độ bit từ 64Kbps xuống dưới 8Kbps, tức là một kênh 64Kbps lúc này có thể phục vụ đồng thời 8 kênh thoại độc lập. Như vậy, lý dó lớn nhất giúp cho chi phí thực hiện cuộc gọi VoIP thấp chính là việc sử dụng tối ưu băng thông.  Tích hợp dịch vụ nhiều dịch vụ: Do việc thiết kế cơ sở hạ tầng tích hợp nên có khả năng hỗ trợ tất cả các hình thức thông tin cho phép chuẩn hoá tốt hơn và giảm thiểu số thiết bị. Các tín hiệu báo hiệu, thoại và cả số liệu đều chia sẻ cùng mạng IP. Tích hợp đa dịch vụ sẽ tiết kiệm chi phí đầu tư nhân lực, chi phí xây dựng các mạng riêng rẽ.  Thống nhất: Vì con người là nhân tố quan trọng nhưng cũng dễ sai lầm nhất trong một mạng viễn thông, mọi cơ hội để hợp nhất các thao tác, loại bỏ các 4
  • 14. điểm sai sót và thống nhất các điểm thanh toán sẽ rất có ích. Trong các tổ chức kinh doanh, sự quản lý trên cơ sở SNMP (Simple Network Management Protocol) có thể được cung cấp cho cả dịch vụ thoại và dữ liệu sử dụng VoIP. Việc sử dụng thống nhất giao thức IP cho tất cả các ứng dụng hứa hẹn giảm bớt phức tạp và tăng cường tính mềm dẻo. Các ứng dụng liên quan như dịch vụ danh bạ và dịch vụ an ninh mạng có thể được chia sẻ dễ dàng hơn.  Vấn đề quản lý băng thông: Trong PSTN, băng thông cung cấp cho một cuộc gọi là cố định. Trong VoIP, băng thông được cung cấp một cách linh hoạt và mềm dẻo hơn nhiều. Chất lượng của VOIP phụ thuộc vào nhiều yếu tố, quan trọng nhất là băng thông. Do đó không có sự bắt buộc nào về mặt thông lượng giữa các thiết bị đầu cuối mà chỉ có các chuẩn tuỳ vào băng thông có thể của mình, bản thân các đầu cuối có thể tự điều chỉnh hệ số nén và do đó điều chỉnh được chất lượng cuộc gọi.  Nâng cao ứng dụng và khả năng mở rộng: Thoại và fax chỉ là các ứng dụng khởi đầu cho VoIP, các lợi ích trong thời gian dài hơn được mong đợi từ các ứng dụng đa phương tiện (multimedia) và đa dịch vụ. Tính linh hoạt của mạng IP cho phép tạo ra nhiều tinh năng mới trong dịch vụ thoại. Đồng thời tính mềm dẻo còn tạo khả năng mở rộng mạng và các dịch vụ.  Tính bảo mật cao: VOIP được xây dựng trên nền tảng Internet vốn không an toàn, do đó sẽ dẫn đến khả năng các thông tin có thể bị đánh cắp khi các gói tin bị thu lượm hoặc định tuyến sai địa chỉ một cách cố ý khi chúng truyền trên mạng. Các giao thức SIP (Session Ineitiation Protocol – giao thức khởi đầu phiên) có thể thành mật mã và xác nhận các thông điệp báo hiệu đầu cuối. RTP (Real Time Protocol) hỗ trợ mã thành mật mã của phương thức truyền thông trên toàn tuyến được mã hoá thành mật mã đảm bảo truyền thông an toàn.1.2.2. Nhược điểm  Chất lượng dịch vụ chưa cao: Các mạng số liệu vốn dĩ không phải xây dựng với mục đích truyền thoại thời gian thực, vì vậy khi truyền thoại qua mạng số liệu cho chất lượng cuộc gọi không được đảm báo trong trường hợp mạng xảy ra tắc nghẽn hoặc có độ trễ lớn. Tính thời gian thực của tín hiệu thoại đòi hỏi chất lượng truyền dữ liệu cao và ổn định. Một yếu tố làm giảm chất lượng thoại nữa là kỹ thuật nén để tiết kiệm đường truyền. Nếu nén xuống dung lượng càng thấp thì kỹ thuật nén càng phức tạp, cho chất lượng không cao và đặc biệt là thời gian xử lý sẽ lâu, gây trễ. 5
  • 15.  Vấn đề tiếng vọng: Nếu như trong mạng thoại, độ trễ thấp nên tiếng vọng không ảnh hưởng nhiều thì trong mạng IP, do trễ lớn nên tiếng vọng ảnh hưởng nhiều đến chất lượng thoại.  Kỹ thuật phức tạp: Truyền tín hiệu theo thời gian thực trên mạng chuyển mạch gói là rất khó thực hiện do mất gói trong mạng là không thể tránh được và độ trễ không cố định của các gói thông tin khi truyền trên mạng. Để có được một dịch vụ thoại chấp nhận được, cần thiết phải có một kỹ thuật nén tín hiệu đạt được những yêu cầu khắt khe: tỉ số nén lớn (để giảm được tốc độ bit xuống), có khả năng suy đoán và tạo lại thông tin của các gói bị thất lạc... Tốc độ xử lý của các bộ Codec (Coder and Decoder) phải đủ nhanh để không làm cuộc đàm thoại bị gián đoạn. Đồng thời cơ sở hạ tầng của mạng cũng cần được nâng cấp lên các công nghệ mới như Frame Relay, ATM,... để có tốc độ cao hơn hoặc phải có một cơ chế thực hiện chức năng QoS (Quality of Service). Tất cả các điều này làm cho kỹ thuật thực hiện điện thoại IP trở nên phức tạp và không thể thực hiện được trong những năm trước đây Ngoài ra có thể kể đến tính phức tạp của kỹ thuật và vấn đề bảo mật thông tin (doInternet nói riêng và mạng IP nói chung vốn có tính rộng khắp và hỗn hợp, không cógì bảo đảm rằng thông tin cá nhân được giữ bí mật).1.3. Yêu cầu chất lượng đối với VoIP Từ những nhược điểm chính của mạng chuyển mạch gói đã đặt ra những yêu cầucho VoIP như sau:  Chất lượng thoại phải ổn định, độ trễ chấp nhận được.  Mạng IP cơ bản phải đáp ứng được những tiêu chí hoạt động khắt khe gồm giảm thiểu việc không chấp nhận cuộc gọi, mất mát gói và mất liên lạc. Điều này đòi hỏi ngay cả trong trường hợp mạng bị nghẽn hoặc khi nhiều người sử dụng chung tài nguyên của mạng cùng một lúc.  Việc báo hiệu có thể tương tác được với báo hiệu của mạng PSTN.  Quản lý hệ thống an toàn, địa chỉ hoá và thanh toán phải được cung cấp, tốt nhất là được hợp nhất với các hệ thống hỗ trợ hoạt động PSTN. 6
  • 16. Chương 2. Các giao thức truyền tải trong VoIP2.1. Giao thức IP Giao thức mạng IP được thiết kế để liên kết các mạng máy tính sử dụng phươngpháp truyền thông và nhận dữ liệu dưới dạng gói. Giao thức IP cho phép truyền cácgói dữ liệu từ điểm nguồn tới điểm đích có địa chỉ cố định. Đơn vị dữ liệu được traođổi là các gói dữ liệu. Các chức năng được thực hiện ở IP là:  Đánh địa chỉ: tất cả các host trong mạng và trong liên mạng đều được cung cấp một địa chỉ IP duy nhất. Theo giao thức IP version 4, mỗi địa chỉ IP gồm 32bit và được chia làm 5 lớp A,B,C,D,E. Các lớp A,B,C được sử dụng để định danh các host trên các mạng. Lớp được sử dụng cho quá trình truyền đa điểm còn lớp E để dự phòng.  Định tuyến: giúp xác định đường đi (tuyến)cho gói tin khi được truyền trên mạng. Nó giúp lựa chọn đường đi tối ưu cho các gói dữ liệu. Nếu hai host cần liên lạc không nằm trên một subnet thì bảng định tuyến sẽ được sử dụng để quyết định việc chuyển dữ liệu và các bộ định tuyến thường xuyên trao đổi và cập nhật thông tin trong bảng định tuyến tùy thuộc vào phương pháp định tuyến được sử dụng.  Truyền đa điểm: Hiện nay có ba cách truyền các gói IP là: o Truyền một điểm đích (unicast): các gói tin được truyền từ host nguồn đến host đích duy nhất. o Truyền quảng bá: gói tin được truyền đến tất cả các host trong mạng. o Truyền đa điểm: gói tin được gửi đến một số các host nhất định trong mạng Ngoài ra, giao thức IP còn cung cấp khả năng phân mảnh dữ liệu lớn thành cácgói có kích thước nhỏ hơn để truyền qua mạng.2.1.1. Giao thức IP phiên bản 4 (IPv4)Cấu trúc của header IPv4 như sau: 7
  • 17. Hình 1. Cấu trúc gói IP phiên bản 4Ý nghĩa các trường như sau:  Version: độ rộng 4 bit mô tả phiên bản IP  IP Header Length(IHL): có độ rộng 4 bit, xác định độ rộng của phần tiêu đề của gói tin IP  Type of Service: có độ rộng 8 bit, xác định các tham số chỉ dịch vụ sử dụng khi truyền gói tin qua mạng. Rất nhiều mạng cung cấp các dịch vụ về độ ưu tiên lưu thông, đặc biệt khi mạng bị quá tải. Việc lựa chọn này đảm bảo đường truyền đạt ba tiêu chuẩn là thời gian trễ, độ tin cậy, bộ thông suốt của gói tin. Được mô tả cụ thể như sau: o Quyền ưu tiên (3 bit) o Độ trễ D (1 bit)  D=0: độ trễ bình thường  D=1: độ trễ cao o Thông lượng T (1bit)  T=0: thông lượng bình thường  T=1: thông lượng cao o Độ tin cậy (1bit):  R=0: độ tin cậy bình thường  R=1: độ tin cậy cao  Total Length (16bit): xác định độ dài của gói tin kể cả phần tiêu đề. Có giá trị tối đa là 65535 byte. Thông thường các host chỉ có thể xử lý gói tin có độ dài là 576 byte gồm 512 byte dữ liệu và 64 byte tiêu đề. Các host chỉ có thể gửi các gói tin cố độ dài lớn hơn 576 byte khi biết trước là host đích có khả năng xử lý gói này.  Indentification: cùng với trường địa chỉ nguồn, đích dùng để định danh duy nhất cho một gói tin trong khoảng thời gian nó tồn tại. 8
  • 18.  Flag : có độ rộng 3 bit, chỉ độ phân đoạn của gói tin o Bit 0: luôn bằng 0 o Bit 1 (DF):  DF=0: có phân đoạn  DF=1: không phân đoạn o Bit 2 (MF):  MF=0: mảnh cuối cùng  MF=1: không phải mảnh cuối cùng  Fragment Offset: độ rộng 13 bit, chỉ rõ vị trí của phân mảnh trong gói tin tính theo đơn vị 64bit.  Time to Live: độ rộng 8 bit, quy định thời gian tồn tại của gói tin.  Protocol: độ rộng 8 bit, xác định giao thức tầng giao vận. Ví dụ o Protocol = 6: giao thức TCP o Protocol=17: giao thức UDP  Header Checksum: độ rộng 16 bit, mã kiểm tra CRC-16 của phần tiêu đề cho phát hiệnlỗi  Source Address: độ rộng 32 bit, xác định địa chỉ nguồn.  Destination Address: độ rộng 32 bit, xác định địa chỉ đích  Option: có độ dài thay đổi để lưu thông tin tùy biến của người dùng  Padding: có độ dài thay đổi, đảm bảo độ dài của header luôn là bội 32 bit  Data: có độ dài tối đa là 65535 byte chứa dữ liệu lớp cao hơn. Đánh địa chỉ trong IPv4 Hệ thống địa chỉ này được thiết kế mềm dẻo qua một sự phân lớp, có 5 lớp địachỉ IP là: A, B, C, D, E. Sự khác nhau cơ bản giữa các lớp địa chỉ này là ở khả năng tổchức các cấu trúc con của nó. Lớp Nhận dạng Địa chỉ đầu Địa chỉ cuối Mặt nạ mạng A 0xxx 0.0.0.0 127.255.255.255 255.0.0.0 B 10xx 128.0.0.0 191.255.255.255 255.255.0.0 C 110x 192.0.0.0 223.255.255.255 255.255.255.0 D 1110 224.0.0.0 239.255.255.255 9
  • 19. E 1111 240.0.0.0 255.255.255.255 Địa chỉ lớp A: Lớp A sử dụng byte đầu tiên của 4 byte để đánh địa chỉ mạng.Như hình trên, nó được nhận ra bởi bit đầu tiên trong byte đầu tiên của địa chỉ có trịgiá 0. Ba byte còn lại được sử dụng để đánh địa chỉ máy trong mạng. Có 126 địa chỉlớp A với số máy tính trong mạng là 2563 – 2 = 16.777.214 máy cho mỗi địa chỉ lớpA. Địa chỉ lớp A thường được cấp cho những tổ chức có số lượng máy tính lớn.Nguyên nhân chỉ có 126 network trong khi dùng 8 bit vì bit đầu tiên mang giá trị 0dùng để định nghĩa lớp A. Do vậy còn lại 7 bit đánh từ 0 – 127, tuy nhiên người takhông sử dụng một địa chỉ chứa toàn các con số 1 hoặc 0 nên chỉ còn lại 126 mạng lớpA được sử dụng. Giá trị byte đầu tiên của lớp A sẽ luôn nằm trong khoảng từ 1 tới 126,mỗi một byte trong 3 byte còn lại sẽ có giá trị trong khoảng 1 đến 254. Địa chỉ lớp B: Một địa chỉ lớp B được nhận ra bởi 2 bit đầu tiên của byte thứnhất mang giá trị 10. Lớp B sử dụng 2 byte đầu tiên của 4 byte để đánh địa chỉ mạngvà 2 byte cuối đánh địa chỉ máy trong mạng. Có 64*256 – 2 = 16.128 địa chỉ mạng lớpB với 65.534 máy cho mỗi địa chỉ lớp B. Địa chỉ lớp C: Một số tổ chức có quy mô nhỏ có thể xin cấp phát địa chỉ lớp C.Một địa chỉ lớp C được nhận ra với 3 bit đầu mạng giá trị 110. Mạng lớp C sử dụng 3byte đầu để đánh địa chỉ mạng và 1 byte cuối đánh địa chỉ máy trong mạng. Có2.097.150 địa chỉ lớp C, mỗi địa chỉ lớp C có 254 máy. Từ các lớp mạng cơ bản trên, ta có thể thực hiện chia subnet cho mạng để tạothành các mạng con (subnet) tùy theo yêu cầu cụ thể. Phần dùng để đánh mạng conđược lấy để đánh subnet được lấy từ phần dành đánh địa chỉ host. Hình 2. Quy các địa chỉ IP khi chia subnet Khi đó, để xác định địa chỉ mạng của trạm, ta cần phải biết mặt nạ mạng tươngứng với IP được chia. Việc tính toán ra địa chỉ mạng của IP được tính như sau: Dạng thập phân Dạng nhị phân 10
  • 20. Địa chỉ IP của trạm 192.168.5.130 11000000.10101000.00000101.10000010Mặt nạ mạng 255.255.255.192 11111111.11111111.11111111.11000000Địa chỉ mạng 192.168.5.128 11000000.10101000.00000101.100000002.1.2. Giao thức IP phiên bản 6 (IPv6) Trong IPv4 trường địa chỉ nguồn và đích có độ dài 32 bit nên không thể đáp ứngđủ nhu cầu đánh địa chỉ của mạng. Ngoài ra, do sự phát triển của Internet, bảng địnhtuyến của router không ngừng lớn lên và khả năng định tuyến đã bộc lộ hạn chế. Yêucầu nâng cao chất lượng dịch vụ và bảo mật được đặt ra. IPv6 là giao thức Internetmới được kế thừa đặc điểm chính của IPv4 và có nhiều cải tiến để khắc phục nhữnghạn chế:  Tăng kích thước địa chỉ từ 32 bit lên 128 bit  Phạm vi định tuyến đa điểm: giao thức này hỗ trợ phương thức truyền mới “anycasting”. Phương thức này sử dụng để gửi các gói tin đến một nhóm xác định.  Phần tiều đề của IPv6 được đơn giản hóa hơn IPv4. Điều đó cho phép xử lý gói tin nhanh hơn. Ngoài ra, IPv6 còn cung cấp một số tiêu đề phụ cho phép giao thức IPv6 có thể sử dụng một cách mềm dẻo hơn hẳn so với IPv4. Cấu trúc gói tin IPv6 như sau: Hình 3. Cấu trúc gói tin IP phiên bản 6 Ý nghĩa các trường như sau:  Version: có giá trị bằng 6 với IPv6  Traffic Class: độ dài 8 bit, xác định độ ưu tiên  Flow Label: độ dài 20bit, xác định các gói dữ liệu được ưu tiên trên đường truyền nếu có xảy ra tranh chấp, thường được sử dụng cho các dịch vụ đòi hỏi chất lượng dịch vụ cao hay thời gian thực. 11
  • 21.  Payload Length: độ dài 16 bit, xác định độ dài phần dữ liệu không tính phần tiêu đề.  Hop Limit: độ dài 8 bit, giống như trường Time to Live của IPv4  Source Address và Destination Address giống như IPv4 nhưng có độ dài 128bit.  Data: có độ dài tối đa là 65535 byte.2.2. Giao thức TCP/IP Giao thức TCP là giao thức điều khiển truyền thông hướng kết nối và có độ tincậy cao. TCP cung cấp là giao thức được xây dựng phức tạp hơn UDP rất nhiều, ngoàicác dịch vụ như UDP, TCP còn cung cấp các dịch vụ khác cho ứng dụng. Dịch vụquan trọng nhất là truyền dữ liệu có độ tin cậy cao, các cơ chế điều khiển lưu lượng vàkiểm soát tắc nghẽn, đánh số thứ tự và số thứ tự bên nhận, bộ định thời,....Cụ thể TCPcung cấp các dịch vụ sau:  Thiết lập liên kết: TCP là giao thức hướng kết nối, trước khi gửi dữ liệu cần thiết lập trước đường truyền (chính là 1 liên kết lôgic giữa hai thực thể TCP), thủ tục này gọi là thủ tục “bắt tay”. Liên kết được thiết lập phải đảm bảo tính chính xác và độ tin cậy, một liên kết khi không còn đủ độ tin cậy thì sẽ bị huỷ bỏ và thiết lập lại. Khi quá trình truyền tin hoàn thành thì kết nối được giải phóng .  Cung cấp đường truyền hai chiều (song công - full duplex).  Đảm bảo độ tin cậy: Giao thức TCP cung cấp các tham số kiểm tra cùng với số thứ tự (Sequence number), xác nhận (ACKnowledge ) và kiểm tra lỗi tổng (Checksum). Các segment được đánh số tuần tự, cách làm này nhằm mục đích loại bỏ các segment bị trùng lặp hay không đúng yêu cầu. Tại bên thu, khi nhận được các segment thực hiện việc kiểm tra nhờ trường checksum. Nếu segment nhận được không lỗi hay lặp, tín hiệu ACK sẽ được gửi trả lại bên phát để khẳng định dữ liệu nhận tốt. Ngược lại nếu segment nhận được bị lỗi hay bị trùng lặp thì segment này sẽ được loại bỏ và bên thu sẽ gửi một tin hiệu yêu cầu bên phát phát lại segment bị lỗi đó, bằng cơ chế này sẽ đảm bảo tính chính xác và độ tin cậy cho dữ liệu.  Cung cấp các dịch vụ (chức năng) kiểm tra đường truyền, cho phép điều khiển luồng và điều khiển tắc nghẽn. 12
  • 22. Trong ứng dụng VoIP, giao thức TCP được sử dụng làm giao thức truyền báohiệu chứ không phục vụ việc truyền tín hiệu thoại. Lý do là vì phần mào đàu của TCPlớn Hình 4. Cấu trúc đơn vị dữ liệu TCP Ý nghĩa các trường như sau:  Source Port: độ dài 16 bit, xác định số hiệu cổng của trạm nguồn  Destination Port: độ dài 16 bit, xác định số hiệu cổng của trạm đích  Sequence Number: độ dài 32 bit. Số hiệu của byte đầu tiên của segment từ khi bit SYN được thiết lập. Nếu bit SYN được thiết lập thì Sequence Number là số hiệu tuần tự khởi đầu (ISN) và byte dữ liệu đầu tiên là ISN+1  ACK Number: độ dài 32 bit, xác định số hiệu của segment tiếp theo mà trạm nguồn đang chờ được xác nhận  Data Offset: độ dài 4 bit, xác định vị trí bắt đầu của khối dữ liệu lớp trên trong đơn vị dữ liệu TCP.  Control bit: o URG: vùng Urgent Pointer có hiệu lực o ACK: vùng ACK có hiệu lực o PSH: chức năng Push o RST: khởi động lại liên kết o SYN: đồng bộ hóa các số hiệu tuần tự o FIN: không còn số liệu từ trạm cuối  Window: cấp phát thẻ bài để kiểm soát luồng dữ liệu theo cơ chế cửa sổ. Đây chính là số lượng các byte dữ liệu bắt đầu từ byte được chỉ ra trong vùng ACK mà trạm nguồn sẵn sàng nhận.  Checksum: mã CRC-16 13
  • 23.  Urgent Pointer: con trỏ trỏe tới số hiệu tuần tự của byte đi sau dữ liệu khẩn, cho bên nhận biết được độ dài của dữ liệu khẩn. Vùng này có hiệu lực khi bit URG được thiết lập.  Option: có độ dài thay đổi, khai báo các lựa chọn của TCP trong đó có độ dài tối đa của vùng dữ liệu trong một đơn vị dữ liệu segment.  Padding: đảm bảo phần tiêu đề của TCP luôn là bội 32 bit.  TCP data: chứa dữ liệu lớp trên có giá trị tối đa là 536 byte. Giá trị này có thể thay đổi nhờ khai báo trong Option Thiết lập và hủy kết nối TCP Để hiểu được chức năng của hàm connect, accept, close và giúp debug các ứngdụng TCP bằng chương trình netstat, chúng ta cần hiểu làm thế nào để thiết lập và hủymột kết nối TCP, cũng như trạng thái của TCP. Hình 5. Bắt tay 3 bước trong thiết lập kết nối TCP Giản đồ trên đây diễn ra khi một kết nối TCP được thiết lập: 1) Server đã sẵn sàng accept một kết nối tới. Công việc này được thực hiện bằng việc gọi hàm socket, bind, listen. Và được gọi là “passive open” (mở ở trạng thái bị động) 2) Client thiết lập một “active open” bằng cách gọi hàm connect. Khi đó, phía client sẽ gửi SYN để báo cho server biết số thứ tự của dữ liệu client sẽ gửi trong kết nối. Thông thường, SYN không chứa dữ liệu, chỉ chứa tiêu đề IP, TCP và có thể là các tùy chọn TCP. 3) Server xác nhận SYN của server. Nó sẽ SYN với số thứ tự cho dữ liệu của nó. Server gửi SYN và ACK cho SYN của client trong cùng một segment. 4) Client xác nhận SYN của server. Số gói tối thiểu được truyền là ba nên được gọi là there-way handshake (bắt tay 3bước). 14
  • 24. Hủy kết nối TCP Trong khi chỉ cần ba segment để thiết lập một kết nối TCP thì cần bốn segmentđể hủy kết nối. 1) Một ứng dụng gọi hàm close trước, chúng ta gọi đầu cuối này thực hiện active- close. Đầu cuối này sẽ gửi FIN segment để kế thúc việc gửi dữ liệu 2) Đầu cuối khác nhận FIN thực hiện “passive close”. FIN nhận được gọi xác nhận bởi TCP. FIN nhận được cũng được truyền lên lớp ứng dụng như là end- of-file(sau khi các dữ liệu khác đã được nhận đủ). Khi nhận được FIN nghĩa là ứng dụng không nhận thêm dữ liệu nữa. 3) Ứng dụng sau khi nhận được end-of-file sẽ close (đóng) socket lại. TCP của nó sẽ gửi FIN. 4) TCP của phía yêu cầu hủy kết nối nhận bản tin FIN cuối cùng, xác nhận FIN. Hình 6. Hủy kết nối TCP Hoạt động của TCP trong thiết lập và hủy cuộc gọi được mô tả bằng lược đồtrạng thái. Có 11 trạng thái khác nhau cho một kết nối và luật cho phép chuyển từtrạng thái này sang trạng thái khác dựa trên cơ sở trạng thái đã có. Ví dụ: nếu một ứngdụng thiết lập một “active open” ở trạng thái CLOSED, TCP gửi SYN và trạng tháimới là SYN_SENT. Nếu TCP sau đó nhận được SYN với ACK, nó sẽ gửi ACK vàmột trạng thái mới ESTABLISH. Trạng thái cuối khi mà việc truyền dữ liệu diễn ra.Hai đường mũi tên chỉ từ trạng thái ESTABLISHED tới trạng thái ngắt kết nối. Nếuứng dụng gọi close trước khi nhận FIN, thì trạng thái là FIN_WAIT1. Nhưng nếu ứngdụng nhận FIN trong khi đang ESTABLISHED, trạng thái sẽ là CLOSE_WAIT. Một lý do cần thiết phải hiểu được lược đồ trạng thái là để hiểu được 11 trạngthái TCP với tên của nó. Trạng thái này được hiện bởi netstat, là một công cụ hữu hiệutrong việc debug ứng client/server. 15
  • 25. Hình 7. Sơ đồ thay đổi trạng thái thiết lập TCP Truyền các gói Hình 8. Truyền dữ liệu với TCPHình trên biễu diễn việc truyền gói thực diễn ra cho một TCP hoàn chỉnh: thiết lập kếtnối, truyền dữ liệu, hủy kết nối. Client trong ví dụ này thông báo MSS=536(xác địnhkích thước buffer của nó) và server có kích thước buffer là 1460. Với mỗi kết nối đượcthiết lập, client tạo một yêu cầu và gửi nó tới server. Yêu cầu này được gắn trọn trongchỉ một TCP segment. Server xử lý yêu cầu và gửi trả lời (kích thước nhỏ hơn 536).Hai gói dữ liệu được biểu diễn bằng đường mũi tên đậm. Chú ý rằng ACK của yêu cầu 16
  • 26. của client được gửi kèm với trả lời của server. Cách thức này được gọi làpiggybacking và thường được thực hiện khi thời gian server xử lý và trả lời nhỏ hơn200ms. Nếu lâu hơn, thì ACK sẽ được gửi trước khi gửi trả lời. Một điều quan trọngtrong mô hình này là: Nếu chỉ để gửi một segment yêu cầu đi và nhận một segment trảlời thì cần tám segment khác. Nếu UDP được sử dụng, chỉ có hai segment đượctruyền: yêu cầu, trả lời. Nhưng chuyển từ TCP sang UDP thì chúng ta không còn tínhtin cậy mà TCP cung cấp cho ứng dụng nữa, việc đảm bảo truyền tin sẽ do chươngtrình UDP thực hiện. Một yếu tố quan trọng nữa của TCP đó là điều khiển tắc nghẽnmà ở UDP không có. Các ứng dụng thường sử dụng UDP với các dữ liệu nhỏ cần tốcđộ truyền cao(độ trễ nhỏ).2.3. Giao thức UDP UDP là giao thức lớp Giao vận đơn giản nhất, được mô tả trong RFC 768. Ứngdụng gửi bản tin tới socket UDP, sau đó được đóng gói thành một UDP paragram vàđược truyền xuống lớp IP để gửi tới đích. Gói tin UDP được truyền mà không đảm bảorằng nó có thể tới đích, giữ đúng thứ tự và đến đích một lần. Vấn đề của người lậptrình mạng với UDP là đảm bảo tính tin cậy. Nếu datagram tới đích nhưng trườngkiểm tra tổng (checksum) có lỗi hay gói tin bị drop ở trên mạng thì nó sẽ được truyềnlại. Nếu muốn xác định được rằng gói tin đã tới đích thì cần rất nhiều tính năng trongứng dụng: ACK từ đầu cuối khác, điều khiển việc truyền lại,.. Mỗi một UDP datagramcó chiều dài và được truyền lên cùng với dữ liệu cho lớp ứng dụng. Điều này khác vớiTCP là giao thức luồng byte (byte-stream protocol). Chúng ta cũng có thể nói: UDPcung cấp dịch vụ không hướng kết nối. Ví dụ, client UDP có thể tạo một socket và gửidatagram tới server này và sau đó gửi một datagram khác cũng tới server khác. Cũnggiống như server UDP có thể nhận nhiều datagram trên một socket UDP từ các clientkhác nhau. Hình 9. Cấu trúc đơn vị dữ liệu UDP2.4. Giao thức SCTP Năm 1998, nhóm làm việc của IETF được tập hợp để thiết kế một cơ chế giaovận tin cậy để truyền báo hiệu điều khiển cuộc gọi trên mạng Internet. Kết quả là 17
  • 27. Sigtran đã được ra đời cho phép truyền các bản tin SS7 trên mạng IP. Vấn đề chính màSigtran cần giải quyết chính mà TCP chưa đáp ứng được đó là:  Head of line blocking: Vấn đề xảy ra khi gửi các bản tin độc lập trên kết nối TCP đã được thiết lập thì các bản tin được nhận sau bị làm trễ và lưu trong bộ đệm của tầng giao vận của phía nhận tới khi các bản tin trước đó bị mất được truyền lại và tới đích. Mà ở đó, các bản tin sau thường thiết lập các cuộc gọi độc lập. Như vậy, trễ ở các bản tin sau là nguyên nhân sinh ra timeout trong điều khiển cuộc gọi gây ra lỗi không mong muốn trong quá trình điều khiển cuộc gọi.  Multihoming: Khi một trạm với nhiều đường truy cập Internet với mục đích dự phòng, không muốn đợi để định tuyến trong khi mạng bị tắc nghẽn để truyền tin với trạm ngang hàng với nó. Với báo hiệu cuộc gọi, trễ này là không thể chấp nhận được khi có nhiều đường đã có. Do TCP chỉ gắn một đường kết nối giữa hai đầu cuối nên sẽ không thể giải quyết được vấn đề này. Cân nhắc những vấn đề này, Sigtran được thiết kế như là một giao thức tầng giaovận mới cho phép mang báo hiệu cuộc gọi trên mạng IP. Đồng thời, IETF mở rộngphạm vi của nhóm thiết kế từ một nhóm nhỏ đến một nhóm chuyên trách để thiết kếmột giao thức giao vận có thể phục vụ nhiều mục đích và hoạt động tốt với nhiều ứngdụng. Và khi đó SCTP ra đời với các đặc tính sau:  Multistreaming: SCTP hỗ trợ đa luồng (stream) bản tin độc lập với nhau trên một liên kết SCTP. Mỗi bản tin được gửi trên đó được gán cho một luồng riêng. Tất cả dữ liệu trong một luồng được nhận theo thứ tự với dữ liệu khác trong luồng. Dữ liệu trong các luồng khác nhau thì không có đặc tính này. Do vậy, SCTP cung cấp cơ chế cho phép việc nhận dữ liệu có thứ tự một cách cục bộ. Như vậy là nó đã giải quyết được vấn đề head-of-line blocking. Ứng dụng của đa luồng (multistreaming) có thể hỗ trợ các ứng dụng liên quan tới hợp kênh dữ liệu như thoại, văn bản, video trên một đường truyền giữa hai đầu cuối thay vì mở nhiều kết nối TCP cho mỗi luồng.  Multihoming: giữa hai đầu cuối trong quá trình thiết lập liên kết có thể xác định liên kết đa điểm. Việc có nhiều giao diện cho phép dữ liệu được tự động gửi theo nhiều địa chỉ khác nhau khi có lỗi xảy ra. Điều này là hoàn toàn không thể thực hiện được ở TCP vì nó gắn kết một đầu cuối với một giao diện nhất định. Nếu như có lỗi xảy ra, tất cả các kết nối được gắn với 18
  • 28. giao diện đó vần có thời gian timeout và được hủy bỏ. Và sau đó, ứng dụng là phải thiết lập lại các kết nối khác. Message Orientation: Trong TCP, dữ liệu được gửi giữa hai đầu cuối là luồng các byte. Nếu cần thiết, ứng dụng phải làm chức năng định dạng khung (frame) cho bản tin. Ở SCTP, bản tin được giữ nguyên định dạng. Tức là nếu tầng ứng dụng phía phát gửi bản tin 100 byte đi thì phía thu cũng nhận được đúng 100 byte. UDP cũng cung cấp dịch vụ hướng bản tin nhưng không có độ tin cậy cao như SCTP. Un-ordered Service: Đối với TCP, tất cả các bản tin được nhận tin cậy đúng theo thứ tự được gửi. Còn với SCTP, giao thức này cung cấp cơ chế nhận tin không có thứ tự (giữa các luồng song song với nhau). Ở UDP cũng cấp dịch vụ này nhưng không có độ tin cậy như SCTP. Extensibility: Gói TCP bị giới hạn bởi 40 byte trường Option. Trái lại, gói SCTP được mở rộng thông qua việc sử dụng trường TLV (Tag-Length- Value). Heartbeat/Keep-alive: SCTP có một tùy chọn cho phép xác định thời gian sống của bản tin. Nó cho phép ứng dụng truyền tin xác định khoảng thời gian mà bản tin còn có ích. Nếu thời gian này hết hạn trước khi được truyền tin cậy tới phía nhận, thì thực thể SCTP gửi có thể dừng việc cố gửi bản tin hay hủy bỏ bản tin. Kiểu tin cậy này gọi là “tin cậy cục bộ”. Điều này rất hữu ích như trong truyền tin di động hay ở các game online. Việc này sẽ giúp tiết kiệm băng thông đường truyền chống tắc nghẽn. Syn cookie: SCTP sử dụng bắt tay bốn bước bới việc sử dụng cookie có dấu hiệu định trước. Phía nhận của bản tin thiết lâpk liên kết SCTP mới duy trì trạng thái no-state (không được cấp tài nguyên) cho tới khi phía khởi tạo chứng thực được đó là IP của đối tượng yêu cầu kết nối. Cơ chế này cho phép chống lại tấn công từ chối dịch vụ bằng cách SYN flooding. Stronger checksum: SCTP cung cấp 32 bit kiểm tra tổng với khả năng phát hiện lỗi tốt hơn 16 bit ở TCP hay UDP. Advanced TCP services: các dịch vụ mới của TCP như SACK (RFC 2018), Appropriate Byte Counting Byte Counting (RFC 3465) và Explicit Congestion Notificaion (RFC3168) đã được tích hợp sẵn trong SCTP. Services/Features SCTP TCP UDP 19
  • 29. Hướng liên kết Có Có KhôngSong công Có Có CóTin cậy Có Có KhôngTin cậy cục bộ optional Không KhôngNhận dữ liệu có thứ tự Có Có KhôngNhận dữ liệu không có thứ tự Có no CóĐiều khiển luồng Có Có KhôngĐiều khiển tắc nghẽn Có Có KhôngCơ chế ECN Có Có KhôngSelective ACKs Có Tùy chọn KhôngHướng bản tin Có no CóTìm lại đường MTU Có Có KhôngPhân mảnh PDU tầng ứng dụng Có Có KhôngBọc các PDU tầng ứng dụng Có Có KhôngĐa luồng Có Không KhôngMultihoming Có Không KhôngChống tấn công tràn SYN Có Không KhôngKêt nối half-closed Không Có KhôngKiểm tra dữ liệu tới đích Có Có Không KhôngGiả tiều đề cho checksum Có Có (sử dụng vtags) 20
  • 30. Trạng thái đợi vtags 4-tuple Không SCTP là giao thức hướng kết nối giống như TCP và cũng có việc bắt tay để thiếtlập và hủy kết nối. Tuy vậy, việc bắt tay của SCTP khác so với TCP. Hình 10. Thiết lập kết nối SCTP 1) Server sẵn sàng chấp nhận một association đến. Việc này được thực hiện thông qua lời gọi hàm socket, bind, listen và được gọi là passive open. 2) Client thiết lập một active open bằng cách gọi hàm connect hay gửi một bản tin yêu cầu mở một association. Khi đó, SCTP client sẽ gửi bản tin INIT thông báo với server danh sách địa chỉ IP của nó, số hiệu thứ tự, tag thiết lập để xác định tất cả các gói là trong một association, số luồng mà client yêu cầu, số luồng vào mà nó hỗ trợ. 3) Server xác nhận bản tin INIT của client với bản tin INIT-ACK chứa danh sách địa chỉ IP, số thứ tự thiết lập, tag thiết lập, số luồng mà nó hỗ trợ và một cookie trạng thái. Cookie trạng thái chứa tất cả các trạng thái mà server xác nhận association là hợp lệ và được gán số để cho việc xác thực này. 4) Client gửi lại cookie trạng thái của server với bản tin COOKIE-ECHO. Bản tin này chứa dữ liệu người dùng gắn kèm. 5) Server xác nhận rằng cookie là hợp lệ và association được thiết lập với bản tin COOKIE-ACK. Bản tin này cũng chứa dữ liệu người dùng. Hủy association Không giống như TCP, SCTP không cho phép “half-closed” association. Khimột đầu cuối ngừng thì đầu cuối kia cũng phải dừng gửi dữ liệu mới. Phía nhận yêucầu hủy kết nối gửi nốt dữ liệu đã được xếp hàng trước khi hủy kết nối. SCTP khôngcó trạng thái TIME_WAIT như TCP mà sử dụng tag để làm việc này. Tất cả các chunk 21
  • 31. được tag hóa với tag gửi trong chunk INIT, một chunk từ một kết nối cũ sẽ được nhậnvới tag sai. Như vậy, SCTP sử dụng việc xác nhận giá trị tag trong TIME_WAIT. Hình 11. Hủy kết nối SCTP Các trạng thái trong kết nối SCTP được biểu diễn bằng lược đồ sau: Hình 12. Sơ đồ trạng thái thiết lập SCTP2.5. Giao thức RTP RTP là một giao thức dựa trên giao thức IP tạo ra các hỗ trợ để truyền tải các dữliệu yêu cầu thời gian thực với các yêu cầu:  Liên tục: Các gói tin phải được sắp xếp theo đúng thứ tự khi chúng đến bên nhận, các gói đến có thể không theo thứ tự và nếu gói tin bị mất thì bên nhận phải dò tìm hay bù lại sự mất các gói tin này.  Sự đồng bộ trong các phương thức truyền thông: Các khoảng lặng trong tiếng nói được triệt và nén lại để giảm thiểu băng thông cần thiết, tuy nhiên khi đến 22
  • 32. bên nhận, thời gian giữa các khoảng lặng này phải được khôi phục một cách chính xác.  Sự đồng bộ giữa các phương thức truyền thông: Có thể tín hiệu thoại sử dụng một phương thức truyền thông trong khi tín hiệu video lại sử dụng một phương thức truyền thông khác, các tín hiệu tiếng và hình phải được đồng bộ một cách chính xác, gọi là sự đồng bộ tiếng - hình.  Sự nhận diện phương thức truyền tải: Trong Internet, thông thường cần thay đổi sự mã hoá cho phương thức truyền tải (payload) trên hành trình truyền để hiệu chỉnh thay đổi độ rộng băng thông sẵn sàng hoặc đủ khả năng cho người dùng mới kết nối vào nhóm. Một vài cơ chế cần được sử dụng để nhận diện sự mã hoá cho mỗi gói đến. Các dịch vụ cung cấp bởi RTP bao gồm:  Đa phát đáp thân thiện: (multicast – friendly): RTP và RTCP là kỹ thuật cho đa phát đáp, cung cấp khả năng mở rộng cuộc hội thoại nhiều bên. Trên thực tế, chúng được thiết kế để có thể hoạt động trong cả các nhóm đa phát đáp nhỏ, phù hợp cho các cuộc điện đàm ba bên. Đối với các nhóm lớn, chúng sử dụng đa phát đáp quảng bá (broadcasting).  Độc lập thiết bị: RTP cung cấp các dịch vụ cần thiết chung cho phương thức truyền thông thời gian thực nói chung như thoại, video hay bất kì một bộ mã hoá, giải mã cụ thể nào có sự định nghĩa các phương thức mã hoá và giải mã riêng bằng các thông tin tiêu đề và định nghĩa.  Các bộ trộn và chuyển đổi: Các bộ trộn là thiết bị nắm giữ phương thức truyền thông từ một vài người sử dụng riêng lẻ, để trộn hoặc nối chúng vào các dòng phương thức truyền thông chung, chuyển đổi chúng vào khuôn dạng khác và gửi nó ra. Các bộ chuyển đổi có ích cho sự thu nhỏ băng thông yêu cầu của dòng số liệu từ dòng số liệu chung trước khi gửi vào từng kết nối băng thông hẹp hơn mà không yêu cầu nguồn phát RTP thu nhỏ tốc độ bit của nó. Điều này cho phép các bên nhận kết nối theo một liên kết nhanh để vẫn nhận được truyền thông chất lượng cao. RTP hỗ trợ cả các bộ trộn và cả các bộ chuyển đổi.  Mã hoá thành mật mã: Các dòng phương thức truyền thông RTP có thể mã hoá thành mật mã dùng các khoá, việc mã hoá đảm bảo cho việc thông tin trên mạng được an toàn hơn. Các gói tin truyền trên mạng Internet có trễ và jitter không dự đoán được. Nhưngcác ứng dụng đa phương tiện yêu cầu một thời gian thích hợp khi truyền các dữ liệu và 23
  • 33. phát lại. RTP cung cấp các cơ chế bảo đảm thời gian, số thứ tự và các cơ chế khác liênquan đến thời gian. Bằng các cơ chế này RTP cung cấp sự truyền tải dữ liệu thời gianthực giữa các đầu cuối qua mạng. Bản thân RTP không cung cấp một cơ chế nào cho việc bảo đảm phân phối kịpthời các dữ liệu tới các trạm mà nó dựa trên các dịch vụ của tầng thấp hơn để thực hiệnđiều này. RTP cũng không đảm bảo việc truyền các gói theo đúng thứ tự. Tuy nhiên,số thứ tự trong RTP header cho phép bên thu xây dựng lại đúng thứ tự các gói của bênphát. Hoạt động của RTP được hỗ trợ bởi một giao thức khác là RTCP để nhận cácthông tin phản hồi về chất lượng truyền dẫn và các thông tin về thành phần tham dựcác phiên hiện thời. Không giống như các giao thức khác là sử dụng các trường trongheader để thực hiện các chức năng điều khiển, RTP sử dụng một cơ chế điều khiển độclập trong định dạng của gói tin RTCP để thực hiện các chức năng này. Khuôn dạng bản tin RTP: RTP header bao gồm một phần cố định có ở mọi gói RTP và một phần mở rộngphục vụ cho các mục đích nhất định. Phần cố định: Hình 13. Phần cố định của đơn vị dữ liệu RTP  Version (2 bits): Chỉ ra version của RTP, hiện nay là version 2.  Padding (1 bit): Nếu bit này được đặt, sẽ có thêm một vài octets thêm vào cuối gói dữ liệu. Các octets này không phải là thông tin, chúng được thêm vào để nhằm mục đích: o Phục vụ cho một vài thuật toán mã hoá thông tin cần kích thước của gói cố định. 24
  • 34. o Dùng để cách ly các gói RTP trong trường hợp có nhiều gói thông tin được mang trong cùng một đơn vị dữ liệu của giao thức ở tầng dưới. Extension (1 bit): nếu bit này được đặt, thì theo sau phần header cố định sẽ là một header mở rộng. Contributing Sources Count (4 bits): số lượng các thành phần nhận dạng nguồn CSRC nằm trong phần header gói tin. Số này lớn hơn 1 nếu các gói tin RTP đến từ nhiều nguồn. Marker (1 bit): mang ý nghĩa khác nhau, tuỳ theo từng trường hợp cụ thể, được chỉ ra trong profile đi kèm. Payload Type (7 bits): chỉ ra loại tải trọng mang trong gói. Các mã sử dụng trong trường này ứng với các loại tải trọng được quy định trong một profile đi kèm. Sequence Number (16 bits): mang số thứ tự của gói RTP. Số này được tăng thêm 1 sau mỗi gói RTP được gửi đi. Có thể được sử dụng để phát hiện được sự mất gói và khôi phục mất gói tại đầu thu. Giá trị khởi đầu của trường này là ngẫu nhiên. Time stamp (tem thời gian, 32 bits): Phản ánh thời điểm lấy mẫu của octet đầu tiên trong gói RTP. Thời điểm này được lấy từ một đồng hồ tăng đều đặn và tuyến tính theo thời gian để cho phép việc đồng bộ và tính toán độ jitter. Tần số đồng hồ này không cố định, tuỳ thuộc vào loại tải trọng. Giá trị khởi đầu được chọn ngẫu nhiên. Một vài gói RTP có thể mang cùng một giá trị “Tem thời gian” nếu như chúng được phát đi cùng lúc về mặt logic. Nếu gói dữ liệu được phát ra đều đặn thì “tem thời gian” được tăng một cách đều đặn. Trong trường hợp khác thì giá trị “tem thời gian” tăng không đều. “Tem thời gian” là thành phần thông tin quan trọng nhất trong các ứng dụng thời gian thực. Người gửi thiết lập các “tem thời gian” ngay thời điểm octet đầu tiên của gói được lấy mẫu. “Tem thời gian” tăng dần theo thời gian đối với mọi gói. Sau khi nhận được gói dữ liệu, bên thu sử dụng các “tem thời gian” này nhằm khôi phục thời gian gốc để chạy các dữ liệu này với tốc độ thích hợp. Ngoài ra, nó còn được sử dụng để đồng bộ các dòng dữ liệu khác nhau (chẳng hạn như giữa hình và tiếng). Tuy nhiên RTP không thực hiện đồng bộ mà các ứng dụng phía trên sẽ thực hiện sự đồng bộ này. 25
  • 35.  Synchronization Source Identifier (SSRC, 32 bits): chỉ ra nguồn đồng bộ của gói RTP, số này được chọn ngẫu nhiên. Trong 1 phiên RTP có thể có nhiều hơn một nguồn đồng bộ. Mỗi một nguồn phát ra một luồng RTP. Bên thu nhóm các gói của cùng một nguồn đồng bộ lại với nhau để phát lại tín hiệu thời gian thực.  Contributing Source Identifier (CSRC, từ 0-15 mục, mỗi mục 32 bits): chỉ ra những nguồn đóng góp thông tin vào phần tải trọng của gói. Giúp bên thu nhận biết được gói tin này mang thông tin của những nguồn nào. Hình 14. Ví dụ về Cấu trúc gói RTP Phần mở rộng: có độ dài thay đổi. Sự tồn tại phụ thuộc vào bit Extension củaphần cố định. Hình 15. Phần mở rộng cấu trúc dữ liệu RTP  16 bit đầu tiên được sử dụng với mục đích riêng cho từng ứng dụng được định nghĩa bởi profile. Thường được dùng để phân biệt các loại header mở rộng.  Length (16 bits): giá trị chiều dài phần header mở rộng tính theo đơn vị 32 bit, không bao gồm 32 bit đầu tiên của phần header mở rộng. Cơ chế mở rộng của RTP cho phép các ứng dụng riêng lẻ của giao thức RTP thựchiện được với những chức năng mới đòi hỏi những thông tin thêm vào phần headercủa gói. Cơ chế này được thiết kế để một vài ứng dụng có thể bỏ qua phần header mở 26
  • 36. rộng này (mà vẫn không ảnh hưởng tới hoạt động) trong khi một số ứng dụng khác lạicó thể sử dụng được phần đó. Bộ phận nhận dạng tải xác định kiểu định dạng của tải tin cũng như cách mã hoávà nén. Từ các bộ phận định dạng này, các ứng dụng phía thu biết cách phân tích vàchạy các dòng dữ liệu tải tin. Tại một thời điểm bất kỳ trong quá trình truyền tin, cácbộ phát RTP chỉ có thể gửi một dạng của tải tin cho dù dạng của tải tin có thể thay đổitrong thời gian truyền (thay đổi để thích ứng với sự tắc nghẽn của mạng). Một chức năng khác của RTP là xác định nguồn: cho phép phía thu biết được dữliệu đến từ đâu. Ví dụ trong thoại hội nghị, từ thông tin nhận dạng nguồn một người sửdụng có thể biết được ai đang nói. RTP được cố tình để cho không hoàn thiện. Nó chỉ cung cấp các dịch vụ phổthông nhất cho hầu hết các ứng dụng truyền thông hội nghị đa phương tiện. Mỗi mộtứng dụng cụ thể đều có thể them vào RTP các dịch vụ mới sao cho phù hợp với cácyêu cầu của nó. Các khả năng mở rộng này được mô tả trong một profile đi kèm.Profile này còn chỉ ra các mã tương ứng sử dụng trong trường PT (Payload Type) củaphần tiêu đề RTP ứng với các loại tải trọng mang trong gói. RTP nằm ở phía trên UDP, sử dụng các chức năng ghép kênh và kiểm tra củaUDP. Sở dĩ UDP được sử dụng làm thủ tục truyền tải cho RTP là bởi vì 2 lý do:  Thứ nhất, RTP được thiết kế chủ yếu cho việc truyền tin đa đối tượng, các kết nối có định hướng, có báo nhận không đáp ứng tốt điều này.  Thứ hai, đối với dữ liệu thời gian thực, độ tin cây không quan trọng bằng truyền đúng theo thời gian. Hơn nữa, sự tin cậy trong TCP là do cơ chế báo phát lại, không thích hợp cho RTP. Ví dụ khi mạng bị tắc nghẽn một số gói có thể mất, chất lượng dịch vụ dù thấp nhưng vẫn có thể chấp nhận được. Nếu thực hiện việc phát lại thì sẽ gây nên độ trễ rất lớn cho chất lượng thấp và gây ra sự tắc nghẽn của mạng. Thực tế RTP được thực hiện chủ yếu trong các ứng dụng mà tại các mức ứngdụng này có các cơ chế khôi phục lại gói bị mất, điều khiển tắc nghẽn.Mạng Internet hiện nay vẫn chưa thể đáp ứng được đầy đủ các yêu cầu của các dịch vụthời gian thực. Các dịch vụ RTP yêu cầu băng thông cao có thể làm giảm chất lượngcác dịch vụ khác trong mạng đến mức nghiêm trọng. Trong quá trình triển khai phảichú ý đến giới hạn băng thông sử dụng của các ứng dụng trong mạng. 27
  • 37. 2.6. Giao thức RTCP RTCP (Real-time Transport Control Protocol) là giao thức hỗ trợ cho RTP cungcấp các thông tin phản hồi về chất lượng truyền dữ liệu. Các dịch vụ mà RTCP cungcấp là:  Giám sát chất lượng và điều khiển tắc nghẽn: Đây là chức năng cơ bản của RTCP. Nó cung cấp thông tin phản hồi tới một ứng dụng về chất lượng phân phối dữ liệu. Thông tin điều khiển này rất hữu ích cho các bộ phát, bộ thu và giám sát. Bộ phát có thể điều chỉnh cách thức truyền dữ liệu dựa trên các thông báo phản hồi của bộ thu. Bộ thu có thể xác định được tắc nghẽn là cục bộ, từng phần hay toàn bộ. Người quản lý mạng có thể đánh giá được hiệu suất mạng.  Xác định nguồn: Trong các gói RTP, các nguồn được xác định bởi các số ngẫu nhiên có độ dài 32 bít, các số này không thuận tiện đối với người sử dụng. RTCP cung cấp thông tin nhận dạng nguồn cụ thể hơn ở dạng văn bản. Nó có thể bao gồm tên người sử dụng, số điện thoại, địa chỉ e-mail và các thông tin khác.  Đồng bộ môi trường: Các thông báo của bộ phát RTCP chứa thông tin để xác định thời gian và nhãn thời gian RTP tương ứng. Chúng có thể được sử dụng để đồng bộ giữa âm thanh với hình ảnh.  Điều chỉnh thông tin điều khiển: Các gói RTCP được gửi theo chu kỳ giữa những người tham dự. Khi số lượng người tham dự tăng lên, cần phải cân bằng giữa việc nhận thông tin điều khiển mới nhất và hạn chế lưu lượng điều khiển. Để hỗ trợ một nhóm người sử dụng lớn, RTCP phải cấm lưu lượng điều khiển rất lớn đến từ các tài nguyên khác của mạng. RTP chỉ cho phép tối đa 5% lưu lượng cho điều khiển toàn bộ lưu lượng của phiên làm việc. Điều này được thực hiện bằng cách điều chỉnh tốc độ phát của RTCP theo số lượng người tham dự. Mỗi người tham gia một phiên truyền RTP phải gửi định kỳ các gói RTCP đến tất cả những người khác cũng tham gia phiên truyền. Nhờ vậy mà có thể theo dõi được số người tham gia. Gói RTCP góp phần làm tăng nghẽn mạng. Băng thông yêu cầu bởi RTCP là 5%tổng số băng thông phân bổ cho phiên. Khoảng thời gian trung bình giữa các góiRTCP được đặt tối thiểu là 5s. Các loại thông báo điều khiển chính được RTCP cung cấp là: 28
  • 38.  SR (Sender Report): chứa các thông tin thống kê liên quan tới kết quả truyền như tỷ lệ tổn hao, số gói dữ liệu bị mất, khoảng trễ. Các thông báo này phát ra từ phía phát trong 1 phiên truyền thông.  RR (Receiver Report): Chứa các thông tin thống kê liên quan tới kết quả nhận, được phát từ phía thu trong 1 phiên truyền thông.  SDES (Source Description): thông số mô tả nguồn (tên, vị trí…)  APP (Application): cho phép truyền các dữ liệu ứng dụng  BYE: chỉ thị sự kết thúc tham gia vào phiên truyền. Giá trị của trường PT (Packet Type) ứng với mỗi loại gói được liệt kê trong bảngsau. Mỗi gói thông tin RTCP bắt đầu bằng 1 phần tiêu đề cố định giống như gói RTPthông tin. Theo sau đó là các cấu trúc có chiều dài thay đổi theo loại gói nhưng luônbằng số nguyên lần 32 bit. Các gói thông tin RTCP có thể gộp lại với nhau thành cáchợp gói (compound packet) để truyền xuống lớp dưới mà không phải chèn thêm cácbit cách ly. Số lượng gói trong hợp gói tuỳ thuộc vào chiều dài đơn vị dữ liệu lớp dưới. Mọi gói RTCP đều phải được truyền, ngay cả khi chỉ có một gói duy nhất.Khuôn dạng hợp gói được đề xuất như sau:  Encription Prefix (32 bit): Được dành khi hợp gói cần mã hoá. Giá trị trong trường này cần tránh trùng với 32 bit đầu tiên trong gói RTP  Gói đầu tiên trong hợp gói luôn là SR hoặc RR. Nếu không thu nhận thông tin, hoặc hợp gói chỉ có một gói BYE thì một gói RR rỗng được dẫn đầu trong hợp gói.  Nếu số lượng các nguồn lớn hơn 31 (không vừa trong một gói SR hoặc RR) thì các gói RR thêm vào sẽ theo sau gói thống kê đầu tiên. Việc bao gồm gói thống kê (RR hoặc SR) trong mỗi hợp gói nhằm thông tin thường xuyên về chất lượng thu của những người tham gia. Việc gửi hợp gói đi được tiến hành một cách đều đặn và thường xuyên theo khả năng cho phép của băng thông. 29
  • 39.  Trong hợp gói có gói SDES nhằm thông báo về nguồn phát. Các gói APP nằm ở vị trí bất kỳ trong hợp gói. Gói BYE nằm ở vị trí cuối cùng. Hình 16. Ví dụ Cấu trúc gói RTCP 30
  • 40. Chương 3. Giao thức báo hiệu VoIP3.1. Giao thức báo hiệu H.323 Khi đề cập đến thoại IP, tiêu chuẩn quốc tế thường được đề cập đến là H.323.Giao thức H.323 là chuẩn do ITU-T phát triển cho phép truyền thông đa phương tiệnqua các hệ thống dựa trên mạng chuyển mạch gói,ví dụ như Internet. Nó được ITU_Tban hành lần đầu tiên vào năm 1996 và gần đây nhất là năm 1998. H.323 là chuẩnriêng cho các thành phần mạng, các giao thức và các thủ tục cung cấp các dịch vụthông tin multimedia như : audio thời gian thực, video và thông tin dữ liệu qua cácmạng chuyển mạch gói, bao gồm các mạng dựa trên giao thức IP.3.1.1. Các thành phần trong mạng3.1.1.1. Thiết bị đầu cuối H.323 (H.323 Endpoint)  Các thiết bị nằm ngoài phạm vi khuyến nghị H.323  Thiết bị vào ra Video.  Thiết bị vào ra Audio.  Thiết bị vào ra số liệu.  Giao diện mạng LAN.  Giao diện người sử dụng.  Các phần tử nằm trong phạm vi khuyến nghị H.323  Bộ mã hoá và giải mã Video.  Bộ mã hoá và giải mã Audio.  Bộ đệm nhận dữ liệu.  Khối điều khiển hệ thống.  Khối điều khiển theo chuẩn H.245 Sử dụng kênh điều khiển H.245 để mang các bản tin điều khiển điểm - điểm điềukhiển hoạt động của thực thể H.323 đó bao gồm : khả năng trao đổi, mở và đóng cáckênh logic, các yêu cầu chế độ hoạt động thích hợp, điều khiển luồng bản tin, phát cáclệnh và các chỉ thị.  Điều khiển báo hiệu cuộc gọi 31
  • 41. Sử dụng báo hiệu cuộc gọi theo khuyến nghị H.225 để thiết lập một kết nối giữahai đầu cuối H.323. Kênh báo hiệu cuộc gọi độc lập với kênh RAS và kênh điều khiểnH.245. Trong hệ thống không có Gatekeeper thì kênh báo hiệu cuộc gọi được thiết lậpgiữa hai đầu cuối H.323 tham gia cuộc gọi. Còn trong hệ thống có Gatekeeper thì kênhbáo hiệu cuộc gọi được thiết lập giữa các đầu cuối và Gatekeeper hoặc giữa hai đầucuối với nhau, việc lựa chọn phương án thiết lập kênh báo hiệu cuộc gọi như thế nào làdo Gatekeeper quyết định.  Chức năng báo hiệu RAS Sử dụng các bản tin H.225 để thực hiện : đăng ký, cho phép dịch vụ, thay đổibăng thông, trạng thái, các thủ tục tách rời giữa các đầu cuối và Gatekeeper. Hình 17. Sơ đồ khối thiết bị đầu cuối H.3233.1.1.2. Gatekeeper Một miền H.323 trên cơ sở mạng IP là tập hợp tất cả các đầu cuối được gán vớimột bí danh. Mỗi miền được quản trị bởi một Gatekeeper duy nhất, là trung tâm đầunão, đóng vai trò giám sát mọi hoạt động trong miền đó. Đây là thành phần tuỳ chọntrong hệ thống VoIP theo chuẩn H.323. Tuy nhiên nếu có mặt Gatekeeper trong mạngthì các đầu cuối H.323 và các Gateway phải hoạt động theo các dịch vụ củaGatekeeper đó. Mọi thông tin trao đổi của Gatekeeper đều được định nghĩa trong RAS.Mỗi người dùng tại đầu cuối được Gatekeeper gán cho một mức ưu tiên duy nhất. Mứcưu tiên này rất cần thiết cho cơ chế báo hiệu cuộc gọi mà cùng một lúc mhiều người sửdụng. H.323 định nghĩa cả những tính chất bắt buộc tối thiểu phải có cho Gatekeepervà những đặc tính tuỳ chọn: 32
  • 42.  Các chức năng bắt buộc tối thiểu của một Gatekeeper gồm : Phiên dịch địa chỉ, điều khiển cho phép truy nhập, điều khiển dải thông, quản lý miền dịch vụ.  Các chức năng tuỳ chọn của Gatekeeper gồm có : Báo hiệu điều khiển cuộc gọi, cấp phép cho cuộc gọi, quản lý cuộc gọi. Gatekeeper hoạt động ở hai chế độ :  Chế độ trực tiếp: Gatekeeper chỉ có nhiệm vụ cung cấp địa chỉ đích mà không tham gia vào các việc định tuyến các bản tin báo hiệu. Hình 18. Phương thức định tuyến trực tiếp  Chế độ định tuyến qua Gatekeeper : Gatekeeper là thành phần trung gian, định tuyến mọi bản tin báo hiệu trong mạng H.323. Hình 19. Phương thức định tuyến qua Gatekeeper Các chức năng cụ thể của Gatekeeper được mô tả như sau: Chức năng dịch địa chỉ: Gatekeeper sẽ thực hiện chuyển đổi địa chỉ URI (dạngtên gọi hay địa chỉ hộp thư ) của một đầu cuối hay Gateway sang địa chỉ truyền dẫn(địa chỉ IP). Việc chuyển đổi được thực hiện bằng cách sử dụng bản đối chiếu địa chỉđược cập nhật thường xuyên bởi các bản tin đăng ký. Cũng có thể là việc chuyển đổitừ quy cách đánh số E.164 sang dạng URI. 33
  • 43. Điều khiển truy cập: Gatekeeper cho phép một truy cập mạng LAN bằng cách sửdụng các bản tin H.225 là ARQ/ACF/ARJ. Việc điều khiển này dựa trên sự cho phépcuộc gọi, băng thông, hoặc một vài thông số khác do nhà sản xuất quy định. Nó có thểlà chức năng rỗng có nghĩa là chấp nhận mọi yêu cầu truy nhập của đầu cuối. Điều khiển độ rộng băng thông: Gatekeeper hỗ trợ các bản tin BRQ/BRJ/BCFcho việc quản lý băng thông. Nó có thể là chức năng rỗng nghĩa là chấp nhận mọi yêucầu thay đổi băng thông. Gatekeeper có thể hạn chế một số các đầu cuối H.323 cùngmột lúc sử dụng mạng. Thông qua việc sử dụng kênh báo hiệu H.225, Gatekeeper cóthể loại bỏ các các cuộc gọi từ một đầu cuối do sự hạn chế băng thông. Điều đó có thểxảy ra nếu Gatekeeper thấy rằng không đủ băng thông sẵn có trên mạng để trợ giúpcho cuộc gọi. Việc từ chối cũng có thể xảy ra khi một đầu đang tham gia một cuộc gọiyêu cầu thêm băng thông. Nó có thể là một chức năng rỗng nghĩa là mọi yêu cầu truynhập đều được đồng ý. Quản lý miền dịch vụ: ở đây miền dịch vụ (domain) nghĩa là tập hợp tất cả cácphần tử H.323 gồm thiết bị đầu cuối. Gateway, MCU có đăng ký hoạt động vớiGatekeeper để thực hiện liên lạc giữa các phần tử trong miền dịch vụ hay từ dịch vụnày sang dịch vụ khác. Điều khiển báo hiệu cuộc gọi: Gatekeeper có thể lựa chọn hai phương thức điềukhiển báo hiệu cuộc gọi là: hoàn thành báo hiệu cuộc gọi với các đầu cuối và xử lý báohiệu cuộc gọi chính bản thân nó, hoặc Gatekeeper có thể ra lệnh cho các đầu cuối kếtnối một kênh báo hiệu cuộc gọi hướng tới nhau. Theo phương thức này thì Gatekeeperkhông phải giám sát báo hiệu trên kênh H.225. Quản lý cuộc gọi: Một ví dụ cụ thể về chức năng này là Gatekeeper có thể lậpmột danh sách tất cả các cuộc gọi H.323 hướng đi đang thực hiện để chỉ thị rằng mộtđầu cuối bị gọi đang bận và cung cấp thông tin cho chức năng quản lý băng thông.3.1.1.3. Khối điều khiển đa điểm Khối điều khiển đa điểm (MCU) được sử dụng khi một cuộc gọi hay hội nghị cầngiữ nhiều kết nối hoạt động. Do có một số hữu hạn các kết nối đồng thời, nên cácMCU giám sát sự thoả thuận giữa các đầu cuối và sự kiểm tra mọi đầu cuối về tínhnăng mà chúng có thể cung cấp cho hội nghị hoặc cuộc gọi. Các MCU gồm hai phần:Bộ điều khiển đa điểm (MC) và Bộ xử lý đa điểm (MP). 34
  • 44. Bộ điều khiển đa điểm có trách nhiệm trong việc thoả thuận và quyết định khảnăng của các đầu cuối. Trong khi đó bộ xử lý đa điểm được sử dụng để xử lýmultimedia, các luồng trong suốt quá trình của một hội nghị hoặc một cuộc gọi đađiểm.3.1.2. Giao thức H.323 Hình 20. Giao thức báo hiệu H.323 Giao thức H.323được chia làm 3 phần chính:  Báo hiệu H.225 RAS (Registration, Admissions, and Status): báo hiệu giữa thiết bị đầu cuối với H.323 gatekeeper trước khi thiết lập cuộc gọi.  Báo hiệu H.225 Q.931 sử dụng để kết nối, duy trì và hủy kết nối giữa hai đầu cuối.  Báo hiệu H.245 sử dụng để thiết lập phiên truyền media sử dụng giao thức RTP.3.1.2.1. Báo hiệu RAS Báo hiệu RAS cung cấp điều khiển tiền cuộc gọi trong mạng H.323 có tồn tạigatekeeper và một vùng dịch vụ(do gatekeeper đó quản lý). Kênh RAS được thiết lậpgiữa các thiết bị đầu cuối và gatekeeper qua mạng IP. Kênh RAS được mở trước khicác kênh khác được thiết lập và độc lập với các kênh điều khiển cuộc gọi và mediakhác. Báo hiệu này được truyền trên UDP cho phép đăng kí, chấp nhận, thay đổi băngthông, trạng thái và hủy. Báo hiệu RAS chia làm các loại sau:  Tìm kiếm Gatekeeper: việc này có thể được thực hiện thủ công hoặc tự động cho phép xác định gatekeeper mà thiết bị đầu cuối đăng kí (để có thể sử dụng dịch vụ sau này); bao gồm: 35
  • 45.  Gatekeeper Request (GRQ): bản tin multicast gửi bởi thiết bị đầu cuối để tìm gatekeeper.  Gatekeeper Confirm (GCF): bản tin thông báo địa chỉ kênh RAS của gatekeeper cho thiết bị đầu cuối.  Gatekeeper Reject (GRJ): báo cho thiết bị đầu cuối biết rằng đã gatekeeper từ chối. Đăng kí: cho phép gateway, thiết bị đầu cuối và MCU tham gia vào một vùng dịch vụ do gatekeeper quản lý và thống báo cho gatekeeper về địa chỉ và bí danh của nó; bao gồm:  Registration Request (RRQ): được gửi từ thiết bị đầu cuối tới địa chỉ kênh RAS của gatekeeper.  Registration Confirm (RCF): được gửi bởi gatekeeper để xác nhận cho phép việc đăng kí bởi bản tin RRQ.  Registration Reject (RRJ): không chấp nhận đăng kí của thiết bị  Unregister Request (URQ): được gửi bới thiết bị đầu cuối để hủy đăng kí với gatekeeper trước đó và được trả lời bằng Unregister Confirm (UCF) và Unregister Reject (URJ) (tương tự như trên). Xác định vị trí thiết bị đầu cuối: Thiết bị đầu cuối và gatekeeper sử dụng bản tin này để lấy thêm thông tin khi chỉ có thông tin ví danh được chỉ ra. Bản tin này được gửi thông qua địa chỉ kênh RAS của gatekeeper hoặc multicast. Loại bản tin này bao gồm:  Location Request (LRQ): được gửi để yêu cầu thông tin về thiết bị đầu cuối, gatekeeper, hay địa chỉ E.164.  Location Confirm (LCF): được gửi bởi gatekeeper chức các kênh báo hiệu cuộc gọi hay địa chỉ kênh RAS của nó hay thiết bị đầu cuối đã yêu cầu.  Location Reject (LRJ): được gửi bởi gatekeeper thông báo LRQ trước đó không hợp lệ. Admissions: bản tin giữa các thiết bị đầu cuối và gatekeeper cung cấp cơ sở cho việc thiết lập cuộc gọi và điều khiển băng thông sau này. Bản tin này bao gồm 36
  • 46. cả các yêu cầu về băng thông(có thể được thay đổi bởi gatekeeper). Loại bản tin này gồm:  Admission Request (ARQ): Gửi bởi thiết bị đầu cuối để thiết lập cuộc gọi  Admission Confirm (ACF): Cho phép thiết lập cuộc gọi. Bản tin này có chức địa chỉ IP của thiết bị được gọi hay gatekeeper và cho phép gateway nguồn thiết lập cuộc gọi.  Admission Reject (ARJ): không cho phép thiết bị đầu cuối thiết lập cuộc gọi. Thông tin trạng thái: dùng để lấy thông tin trạng thái của một thiết bị đầu cuối. Ta có thể sử dụng bản tin này để theo dõi trạng thái online hay offline của thiết bị đầu cuối trong tình trạng mạng bị lỗi. Thông thường bản tin này sẽ được gửi 10 giây một lần. Trong quá trình cuộc gọi, gatekeeper có thể yêu cầu thiết bị đầu cuối gửi theo chu kì các bản tin trạng thái. Loại bản tin này bao gồm:  Information Request (IRQ): gửi từ gatekeeper tới thiết bị đầu cuối yêu cầu thông tin trạng thái.  Information Request Response (IRR): được gửi từ thiết bị đầu cuối tới gatekeeper trả lời cho bản tin IRQ. Bản tin này cũng được gửi từ thiết bị đầu cuối tới gatekeeper theo chu kì.  Status Enquiry Sent : Thiết bị đầu cuối hay gatekeeper có thể gửi bản tin này tới thiết bị đầu cuối khác để xác thực về trạng thái cuộc gọi. Điều khiển băng thông: Dùng để thay đổi băng thông cho cuộc gọi với các bản tin như sau:  Bandwidth Request (BRQ): gửi bởi thiết bị đầu cuối để yêu cầu tăng hoặc giảm băng thông cuộc gọi  Bandwidth Confirm (BCF): chấp nhận thay đổi yêu cầu bởi thiết bị đầu cuối.  Bandwidth Reject (BRJ): không chấp nhận thay đổi yêu cầu bởi thiết bị đầu cuối. Hủy kết nối: Khi muốn kết thúc cuộc gọi thì trước hết thiết bị đầu cuối dừng hết mọi kết nối và đóng hết các kênh logic lại. Sau đó, nóe sẽ ngắt phiên H.245 và 37
  • 47. gửi tín hiệu RLC trên kênh báo hiệu cuộc gọi. Ở bước này, nếu không có gatekeeper thì cuộc gọi sẽ được hủy còn nếu không thì các bản tin sau sẽ được gửi trên kênh RAS để kết thúc cuộc gọi:  Disengage Request (DRQ): Gửi bởi thiết bị đầu cuối hay gatekeeper để kết thúc cuộc gọi.  Disengage Confirm (DCF): Gửi bởi thiết bị đầu cuối hay gatekeeper để chấp nhận bản tin DRQ trước đó.  Disengage Reject (DRJ): Được gửi bởi thiết bị đầu cuối hoặc gatekeeper thông báo không chấp nhận yêu cầu DRQ.3.1.2.2. Báo hiệu điểu khiển cuộc gọi H.225 Trong mạng H.323, chức năng điều khiển cuộc gọi dựa trên cơ sở giao thứcH.323 với việc sử dụng bản tin báo hiệu Q.931. Một kênh điều khiển cuộc gọi đượctạo ra dựa trên giao thức TCP/IP với cổng 1720. Tổng này thiết lập các bản tin điềukhiển cuộc gọi giữa hai thiết bị đầu cuối với mục đích thiết lập, duy trì và kết thúccuộc gọi. H.225 cũng sử dụng bản tin Q.932 cho các dịch vụ bổ sung. Các bản tinQ.931 và Q.932 thường được sử dụng trong mạng H.323:  Setup: Được gửi từ thực thể H.323 chủ gọi để cố gắng thiết lập kết nối tới thực thể H.323 bị gọi qua cổng 1720 TCP.  Call Proceeding: thực thể bị gọi gửi bản tin này tới thực thể chủ gọi để chỉ thị rằng thủ tục thiết lập cuộc gọi đã được khởi tạo.  Alerting: Được gửi từ thực thể bị gọi tới thực thể chủ gọi để chỉ thị rằng chuông bên đích bắt đầu rung.  Connect: Được gửi từ thực thể bị gọi để thông báo rằng bên bị gọi đã trả lời cuộc gọi. Bản tin Connnect có thể mang địa chỉ truyền vận UDP/IP.  Release Complete: Được gửi bởi một đầu cuối khởi tạo ngắt kết nối, nó chỉ thị rằng cuộc gọi đang bị giải phóng. Bản tin này chỉ có thể được gửi đi nếu kênh báo hiệu cuộc gọi được mở hoặc đang hoạt động.  Facility: Đây là một bản tin Q.932 dùng để yêu cầu hoặc phúc đáp các dịch vụ bổ sung. Nó cũng được dùng để cảnh báo rằng một cuộc gọi sẽ được định tuyến trực tiếp hay thông qua GK. Các bản tin trong quá trình thiết lập cuộc gọi như sau: 38
  • 48. Hình 21. Q.931 trong thiết lập cuộc gọi 1. Thiết bị đầu cuối H.323 gửi bản tin Setup yêu cầu thiết lập cuộc gọi. Giả sử ở đây bản tin được gửi tới Gatekeeper (thiết lập cuộc gọi thông qua Gatekeeper). 2. Gatekeeper sẻ gửi trả lại bản tin Call Proceeding nhằm thông báo cho phía gọi rằng: Thiết bị này đang thực hiện thiết lập cuộc gọi. 3. Khi đầu cuối bị gọi rung chuông, Gatekeeper sẽ gửi bản tin Alerting về đầu cuối gọi thông báo về trạng thái này. 4. Khi người được gọi nhấc máy, bản tin Connect sẽ được gửi tới đầu cuối gọi thông báo cuộc gọi đã được thiết lập. 5. Cuộc gọi được thực hiện3.1.2.3. Giao thức H.245 Chức năng H.245 là thiết lập các kênh logic để truyền audio, video, data và cácthông tin kênh điều khiển. Giữa hai thiết bị đầu cuối được thiết lập một kênh H.245cho một cuộc gọi. Kênh điều khiển này được tạo dựa trên TCP gán động port. Chứcnăng điều khiển của kênh H.245 là thương lượng về một số thông số sau:  Bộ mã hóa tiếng nói sẽ được sử dụng ở hai phía. Lấy ví dụ, chuẩn mã hóa tiếng nói và tốc độ bit tương ứng như sau: G.729 - 8 kbps, G.728 - 16 kbps, G.711 - 64 kbps, G.723 - 5.3 hay 6.3 kbps, G.722 - 48, 56, và 64 kbps… 39
  • 49.  Thương lượng về Chủ/tớ giữa hai thiết bị đầu cuối: xác lập vai trò của các thiết bị trong khi thực hiện cuộc gọi tránh hiện tượng xung đột.  Round-Trip Delay: xác định độ trễ giữa phía phát và phía thu. Dựa vào thông số này để xác định kết nối vẫn hoạt động.  Báo hiệu trên kênh logic để thực hiện việc mở và đóng các kênh logic. Các kênh này được thiết lập trước khi thông tin được truyền đên đó. Báo hiệu này có thể thiết lập kênh đơn hướng hoặc song hướng. Sau khi kênh logic đã được thiết lập, cổng UDP cho kênh media RTP được truyền từ phía nhận tới phía phát. Khi sử dụng một hình định tuyến qua Gatekeeper thì Gatekeeper sẽ chuyển hướng luồng RTP bằng cách cung cấp địa chỉ UDP/IP thực của thiết bị đầu cuối. Luồng RTP sẽ truyền trực tiếp giữa hai thiết bị đầu cuối với nhau. Mỗi kênh media – sử dụng RTP để truyền thời gian thực - sẽ có một kênh phảnhồi về chất lượng dịch vụ QoS theo chiều ngược lại giúp phía phát kiểm soát đượcluồng media truyền đi và có những điều chỉnh phù hợp. Hình 22. Cấu trúc luồng media giữa các đầu cuối3.1.3. Thiết lập cuộc gọi VoIP sử dụng giao thức H.3233.1.3.1. Báo hiệu trực tiếp giữa các thiết bị đầu cuối Trong mô hình này, có chú ý là các thiết bị đầu cuối (Endpoint) chỉ xin phépGatekeeper thực hiện cuộc gọi thông qua báo hiệu RAS còn các bước báo hiệu giữacác thiết bị này được thực hiện trực tiếp không thông qua Gatekeeper. 40
  • 50. Hình 23. Thiết lập báo hiệu H.323 trực tiếp giữa các đầu cuối Bước 1: Endpoint O đăng kí với Gatekeeper yêu cầu cho phép thực hiện mộtcuộc gọi tới Endpoint T. Các bước thực hiện xác thực thuê bao gọi sẽ được thực hiện ởbước này. Gatekeeper trả lời cho phép Endpoint O thực hiện cuộc gọi và địa chỉ củachính xác của Endpoint T. Trong trường hợp này, hai Endpoint thực hiện cuộc gọi trựctiếp với nhau. Bước 2: Endpoint O và Endpoint T thiết lập một kết nối TCP cho báo hiệu H.225để truyền các bản tin Q.931 cho phép thiết lập cuộc gọi. Endpoint O gửi bản tin Setuptới Endpoint T yêu cầu thiết lập cuộc gọi. Endpoint T trả lời bằng bản tin CallProceeding thông báo cuộc gọi đang được thực hiện. 41
  • 51. Bước 3: Endpoint T xin phép Gatekeeper cho phép thực hiện cuộc gọi vớiEndpoint O. Gatekeeper trả lời đồng ý cho Endpoint T chấp nhận cuộc gọi. Endpoint Tthực hiện rung chuông và báo cho Endpoint O biết là đang rung chuông người bị gọi. Bước 4: Người bị gọi nhấc ống nghe. Endpoint T gửi bản tin Conect tới EndpointO thông báo kênh cuộc gọi đã được thiết lập. Lúc này, giữa hai Endpoint mở một kếtnối TCP nữa cho kênh báo hiệu H.245 để thương lượng, thiết lập và duy trì kênhmedia. Bước 5: Khi đã thương lượng xong (các thông số được mô tả trong phần báo hiệuH.245), mỗi Endpoint yêu cầu mở một kết nối audio để truyền thoại. Như vậy sẽ tồntại hai kênh cho phép thực hiện cuộc gọi hai chiều giữa hai thuê bao. Quá trình thoạiđược thực hiện hiện dựa trên giao thức RTP với sự kiểm soát của RTCP.3.1.3.2. Báo hiệu được định tuyến thông qua Gatekeeper Trong hình thức báo hiệu này thì mọi bản tin báo hiệu để được gửi quaGatekeeper. Gatekeeper sẽ xử lý và chuyển tiếp bảo tin tới phía bị gọi. Khi đó, phíagọi không nhất thiết phải biết chính xác địa chỉ của phía bị gọi nhưng quá trình này sẽbị trễ nhiều hơn. Các bản tin báo hiệu trong mô hình này gần như giống với trường hợp báo hiệutrực tiếp giữa hai thiết bị đầu cuối nhưng có một số chú ý như sau:  Gatekeeper ở đây sẽ gồm có hai giao diện: giao diện với Endpoint O và Endpoint T. Việc phân biệt như vậy sử giúp chúng ta rõ rằng hơn trong việc gửi nhận các bản tin vì hai giao diện này hoạt động có sự độc lập nhất định với nhau.  Kênh báo hiệu H.225 được thiết lập giữa các Endpoint và Gatekeeper 42
  • 52.  Khi nhận được bản tin Setup từ Endpoint O gửi tới, Gatekeeper sẽ gửi bản tin này tới Endpoint T và gửi ngay bản tin Call Proceeding về cho Endpoint O báo rằng cuộc gọi đang trong quá trình thiết lập.  Sau khi nhận được bản tin Connect từ Endpoint T, Endpoint O và Endpoint T sẽ thực hiện báo hiệu trực tiếp với nhau để mở kênh truyền media. Hình 24. Thiết lập báo hiệu H.323 định tuyến qua Gatekeeper3.1.3.3. Thiết lập cuộc gọi giữa hai thiết bị đầu cuối ở hai vùng dịch vụ Trong mô hình này là việc thực hiện cuộc gọi giữa hai thiết bị đầu cuối ở haivùng dịch vụ khác nhau cho nhau. Đây là mô hình báo hiệu dựa trên việc định tuyếncủa các Gatekeeper. Sau khi nhận được yêu cầu của Endpoint O muốn thiết lập cuộc gọi với EndpointT, Gatekeeper 1 gửi tới Endpoint T yêu cầu thiết lập cuộc gọi. Vì Endpoint T nằmtrong vùng dịch vụ do Gatekeeper 2 quản lý nên nó phải xin sự cho phép để có thểthực hiện cuộc gọi (giống như các trường hợp trước). Ở trong trường hợp này,Gatekeeper 2 cũng gửi trả lời bản tin ARQ của Endpoint T bằng bản tin ACF cho phépthiết lập cuộc gọi nhưng phải thông qua nó (không cho thực hiện cuộc gọi trực tiếp tớiEndpoint T). Do vậy, Endpoint T gửi bản tin Facility tới Gatekeeper 1 thông báo làcuộc gọi được chấp nhận nhưng phải được định tuyến lại thông qua Gatekeeper 2.Chính vì vậy, kênh báo hiệu H.245 cũ được hủy và thay bằng các kênh báo hiệu biểudiễn như trong hình vẽ. 43
  • 53. Hình 25. Thiết lập kết nối giữa hai vùng dịch vụ3.2. Giao thức SIP SIP (Session Initiation Protcol ) 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ác phiên multimedia bao gồm thoại Internet, hội nghị, và các ứng dụngtươ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à để mangcác thông tin mô tả phiên truyền dẫn. SIP hỗ trợ các phiên đơn bá (unicast) và quảngbá (multicast) tương ứng các cuộc gọi điểm tới điểm và cuộc gọi đa điểm. Có thể sửdụng năm chức năng của SIP để thiết lập và kết thúc truyền dẫn là định vị thuê bao,khả năng thuê bao, độ sẵn sàng của thuê bao, thiết lập cuộc gọi và xử lý cuộc gọi. SIPđược IETF đưa ra trong RFC 2543. Nó là một giao thức dựa trên ý tưởng và cấu trúccủa HTTP (HyperText Transfer Protocol) giao thức trao đổi thông tin của World Wide 44
  • 54. Webư và là một phần trong kiến trúc multimedia của IETF. Các giao thức có liên quanđến SIP bao gồm giao thức đặt trước tài nguyên RSVP (Resource ReservationProtocol), giao thức truyền vận thời gian thực (Realưtime Transport Protocol), giaothức cảnh báo phiên SAP (Session Announcement Protocol), giao thức miêu tả phiênSDP (Session Description Protocol). Các chức năng của SIP độc lập, nên chúng khôngphụ thuộc vào bất kỳ giao thức nào thuộc các giao thức trên. Mặt khác, SIP có thể hoạt động kết hợp với các giao thức báo hiệu khác nhưH.323. SIP là một giao thức theo thiết kế mở do đó nó có thể được mở rộng để pháttriển thêm các chức năng mới. Sự linh hoạt của các bản tin SIP cũng cho phép đáp ứngcác dịch vụ thoại tiên tiến bao gồm cả các dịch vụ di động.3.2.1. Các thành phần trong mạng SIP3.2.1.1. Giới thiệu chung về các thành phần trong mạng SIP  SIP Client: là thiết bị hỗ trợ giao thức SIP như SIP phone, chương trình chat,… Đây chính là giao diện và dịch vụ của mạng SIP cho người dùng.  SIP Server: là thiết bị trong mạng xử lý các bản tin SIP với các chức năng cụ thể như sau: 1) Proxy Server: là thực thể trong mạng SIP làm nhiệm vụ chuyển tiếp các SIP request tới thực thể khác trong mạng. Như vậy, chức năng chính của nó trong mạng là định tuyến cho các bản tin đến đích. Proxy server cũng cung cấp các chức năng xác thực trước khi cho khai thác dịch vụ. Một proxy có thể lưu (stateful) hoặc không lưu trạng thái (stateless) của bản tin trước đó. Thông thường, proxy có lưu trạng thái, chúng duy trì trạng thái trong suốt transaction (khoảng 32 giây). 2) Redirect Server: trả về bản tin lớp 300 để thông báo thiết bị là 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ề. 3) Registrar server: là server 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 Server. 4) Location Server: lưu thông tin trạng thái hiện tại của người dùng trong mạng SIP. 45
  • 55. 3.2.1.2. Mối liên hệ giữa các thành phần trong mạng SIP Trong ví dụ thứ nhất, cho ta có một cái nhìn khái quát về chức năng của ProxyServer, Redirect Server, SIP Phone trong mạng. Giả sử thuê bao có tên user1 trongmiền dịch vụ do here.com muốn thực hiện một cuộc gọi thoại tới thuê bao có thể làuser2 ( thuộc there.com) Hình 26. Chức năng của Proxy, Redirect Server trong mạng SIP 1. Khi User 1 muốn gọi tới User 2, trước hết nó sẽ gửi bản tin INVITE 1 đến Proxy Server 1. Proxy Server 1 chuyển tiếp bản tin tới Redirect Server. 2. Redirect Server này xử lý và trả về mã 3xx thông báo cho Proxy Server tự thực hiện kết nối. 3. Proxy Server 1 gửi bản tin INVITE 2 tới đích trả về bởi Redirect Server ( chính là Stateless Proxy Server 1). Vì đây là Stateful Proxy nên thực chất bản tin INVITE được gửi bởi Stateful Proxy là khác so với bản tin nhận được từ User1(ban đầu). 4. Stateless Proxy Server chuyển tiếp bản tin INVITE tới SIP Statefull Proxy 2. Do là Stateless Proxy nên công việc của nó đơn giản là chuyển tiếp bản tin. 5. SIP Statefull Proxy 2 chuyển tiếp bản tin INVITE tới user2. 6. Khi user2 nhấc máy thì nó sẽ gửi bản tin 200 OK theo chiều ngược lại. 7. Sau khi nhận được bản tin 200 OK, user1 sẽ gửi xác nhận ACK tới user2. 8. Luồng RTP trực tiếp giữa hai thuê bao được thiết lập. Và cuộc gọi được thực hiện. 46
  • 56. Trong ví dụ thứ hai sẽ mô tả quá trình một SIP Phone đăng kí với với RegistrarServer quản lý nó,hoạt động của Location Server, Proxy Server. Hình 27. Chức năng của Location, Registrar Server trong mạng SIP Khi một SIP Phone được kết nối với mạng. Nó liên tục gửi bản tin REGISTERtới Registrar Server để thông báo vị trí hiện tại của nó. Giả sử trong miền dịch vụ cótên chicago.com thì quá trình REGISTER (đăng kí) được tiến hành như sau: 1. Thuê bao có tên Carol gửi bản tin REGISTER tới Registrar Server. Server này tiến hành xác thực. Nếu hợp lệ thì các thông tin đó được lưu trong Location Server. 2. Khi một thuê bao khác (có tên là Bob) gửi bản tin INVITE tới Proxy Server để xin kết nối tới thuê bao Carol. Proxy Server sẽ truy vấn các thông tin về thuê bao bị gọi thông qua Location Server. 3. Proxy Server gửi bản tin INVITE tới thuê bao Carol để thiết lập cuộc gọi.3.2.2. Bản tin SIP3.2.2.1. Các loại bản tin SIP  Bản tin yêu cầu (Request): được gửi từ client tới server. RFC 3261 định nghĩa 6 kiểu bản tin request cho phép UA và proxy có thẻ xác định người dùng, khởi tạo, sử đổi, hủy một phiên.  Bản tin INVITE: yêu cầu thiết lập một phiên hoặc để thay đổi các đặc tính của phiên trước đó.Trong bản tin này có sử dụng SDP để định nghĩa về các thông số media của phiên. Một response thành công có giá trị 200 47
  • 57. được trả lại các thông số mà người được gọi chấp nhận trong phiên media.  Bản tin ACK xác nhận rằng client đã nhận được response cuối cùng của bản tin INVITE. ACK chỉ được sử dụng kèm với bản tin INVITE. ACK được gửi từ đầu cuối đến đầu cuối cho response 200 OK. ACK cũng có thể chứa phần thân bản tin với mô tả phiên cuối cùng nếu bản tin INVITE không chứa.  Bản tin OPTIONS: UA sử dụng request này để truy vấn tới server về khả năng của nó.  Bản tin BYE: UA sử dụng bản tin này để yêu cầu hủy một phiên đã được thiết lập trước đó.  Bản tin CANCEL: cho phép client và server hủy một request, ví dụ như INVITE. Nó không ảnh hưởng tới request đã hoàn thành trước đó mà server đã gửi response.  Bản tin REGISTER: Một client sử sụng REGISTER để yêu cầu đang kí vị trí của nó tới AOR (address of record) của người dùng với SIP server.  Bản tin đáp ứng (Response): server gửi bản tin SIP đáp ứng (SIP response) tới client để báo về trạng thái của SIP request mà client gửi trước đó. Các SIP response được đánh số từ 100 đến 699, được chia thành các lớp nghĩa khác nhauCác lớp Response Mã trả về Mô tảThông tin 100 Đang thực hiện kết nối 180 Đang đổ chuông 181 Cuộc gọi đang được chuyển tiếp 182 Được đặt vào hàng đợi 183 Phiên đang được xử lýThành công 200 Thành côngChuyển hướng 300 Nhiểu lựa chọn 301 Chuyển vĩnh viễn 302 Chuyển tạm thời 305 Sử dụng proxy 48
  • 58. Các lớp Response Mã trả về Mô tả 380 Dịch vụ khácLỗi Client 400 Yêu cầu không hợp lệ 401 Không nhận dạng được 402 Yêu cầu thành toán 403 Bị cấm 404 Không tìm thấy 405 Phướng thức không được phép 406 Không chấp nhận 407 Yêu cầu xác thực Proxy 408 Request timeout 410 Đã dời đi 413 Yêu cầu quá dài 414 URL được yêu cầu quá lớn 415 Không hỗ trợ kiểu media 416 Không hỗ trợ URI 420 Phần mở rộng lỗi 421 Yêu cầu phần mở rộng 423 Khoảng thời gian giữa hai sự kiện quá ngắn 480 Tạm thời chưa sẵn sàng 481 Transaction không tồn tại 482 Phát hiện thấy “loop” (chu trình) 483 Quá nhiều “hop” 484 Địa chỉ không đủ 485 Mật mở không rõ ràng 486 Đang bận 487 Yêu cầu bị hủy 488 Không thể chấp nhận tại đây 491 Yêu cầu chưa được giải quyết 493 Không giải mã đượcLỗi Server 500 Lỗi nội tại trong server 49
  • 59. Các lớp Response Mã trả về Mô tả 501 Chưa được thực hiện đầu đủ 502 Gateway lỗi 503 Dịch vị không tồn tại 504 Server timeout 505 Phiên bản SIP không được hỗ trợ 513 Bản tin quá lớnLỗi toàn cục 600 Bận ở khắp mọi nơi 603 Suy sụp 604 Không tồn tại 606 Không thể chấp nhận3.2.2.2. Cấu trúc bản tin SIP  Bản tin Request: INVITE sip:bob@proxy.company.com SIP/2.0 Via: SIP/2.0/UDP ph1.company.com:5060;branch=z9hG4bK83749.1 From: Alice <sip:alice@company.com>;tag=1234567 To: Bob <sip:bob@proxy.company.com> Call-ID: 12345601@ph1.company.com CSeq: 1 INVITE Contact: <sip:alice@ph1.company.com> Content-Type: application/sdp Content-Length: ... v=0 o=alice 2890844526 28908445456 IN IP4 172.18.193.102 s=Session SDP c=IN IP4 172.18.193.102 t=0 0 m=audio 49170 RTP/AVP 0 50
  • 60. INVITE sip:bob@proxy.company.com SIP/2.0 a=rtpmap:0 PCMU/8000  Bản tin Response: SIP/2.0 200 OK Via: SIP/2.0/UDP ph1.company.com:5060;branch=z9hG4bK83749.1 From: Alice <sip:alice@company.com>;tag=1234567 To: Bob <sip:bob@proxy.company.com>;tag=9345678 Call-ID: 12345601@ph1.company.com CSeq: 1 INVITE Content-Length: ... v=0 o=bob 3800844316 3760844696 IN IP4 172.18.193.109 s=Session SDP c=IN IP4 172.18.193.109 t=0 0 m=audio 48140 RTP/AVP 0 a=rtpmap:0 PCMU/8000  Ý nghĩa của các trường trong bản tin:Tiêu đề SIP Mô tảFrom Thường là AOR(Address of Record) của người gửi. Nó bao gồm SIP hoặc SIPS URI và với tùy chọn tên được hiển thị.To Mô tả người nhận của bản tin SIP, AOR của người nhận. Với chức năng forward hay redirect thi đanh không phải là địa chỉ người nhận. Trường này giống trường From.Call-ID Định nghĩa series của bản tin SIP. Call-ID phải được xác định trong mọi bản tin SIP được gửi bởi tất cả các UA trong một dialog. 51
  • 61. Tiêu đề SIP Mô tảCseq Chứa một giá trị nguyên và tên phương thức. Trường này dùng để xác định, săpx xếp, đánh dấu chuỗi SIP request trong một dialog. Cseq có thể khác nhau giữa bản tin được truyền lại và truyền mới.Via Xác định đường đi được chỉ ra request và các response sẽ được gửi.Contact Chứa SIP hoặc SIPS URI của UA muốn nhận được SIP request mới.Allow Liệt kê tập các phương thức SIP được hỗ trợ bởi UA.Supported Liệt kê tập các phần mở rộng của SIP hỗ trợ bởi UA.Require Trường này rất giống như trường Supported nhưng là của các UA ở xa cần thiết cho một transaction được xử lý.Content- Kiểu của phần thân của bản tin SIP (nếu có phần thân)TypeContent- Kích thức của phần thân bản tin SIP. Trường này là bắt buộc khi bản tinLength SIP được truyền trên TCP.3.2.3. Mô tả cuộc gọi SIP3.2.3.1. Cuộc gọi được định tuyến qua Proxy Server Hình 28. Thiết lập cuộc gọi SIP với Proxy Server 1. Proxy server nhận được bản tin INVITE từ client. 2. Proxy server liên lạc với Location server để xác định địa chỉ của người bị gọi. 3. Location server xác định vị trí của người được gọi và cung cấp địa chỉ server đích. 52
  • 62. 4. Bản tin INVITE được chuyển tiếp tới địa chỉ mà Location server trả về. Proxy server sẽ thêm tiêu đề Record-Route vào bản tin INVITE để chắc rằng tất cả các bản tin tuần tự sau đó được định tuyến qua proxy. Điều này cần thiết cho quá trình tính cước hoặc các ứng dụng khác cần thiết để kiểm soát các bản tin cho dialog này. 5. Phía được gọi rung chuông. Người được gọi nhấc máy. 6. Phía được gọi gửi bản tin 200 OK thông báo cuộc gọi bắt đầu. 7. Bản tin 200 OK được chuyển tiếp qua proxy server tới phía gọi. 8. Phía gọi trả lời bản tin 200 OK nhận được bằng bản tin ACK tới proxy- server ( khi proxy chèn tiêu đề Record-Route vào trong bản tin INVITE) hoặc gửi trực tiếp tới phía người được gọi. 9. Proxy chuyển tiếp ACK tới người được gọi. 10. Cuộc gọi thoại được thiết lập.3.2.3.2. Báo hiệu trực tiếp giữa các thiết bị đầu cuối Hình 29. Thiết lập cuộc gọi với Redirect Server 1. Redirect server nhận được bản tin INVITE từ phía UA gọi. 2. Redirect server liên lạc với Location server để lấy thông tin địa chỉ của UA được gọi. 3. Location server trả lại địa chỉ của UA được gọi. 53
  • 63. 4. Redirect server trả địa chỉ trực tiếp về UA gọi với bản tin 3xx với trường Contact đã được cập nhật. Không giống như Proxy server, Redirect server không chuyển tiếp bản tin INVITE. 5. UA gọi gửi bản tin ACK tới Redirect server để xác nhận về bản tin 3xx. 6. UAC gọi gửi trực tiếp bản tin INVITE vởi trường Contact: là địa chỉ trả về bởi Redirect server tới UA được gọi. 7. UA được gọi rung chuông và người dùng nhấc máy. UA được gọi gửi bản tin 200 OK tới UA gọi. 8. UAC gọi gửi bản tin ACK xác nhận.3.3. So sánh giữa giao thức H.323 và SIP Giữa H.323 và SIP có nhiều điểm tương đồng. Cả hai đều cho phép điều khiển,thiết lập và huỷ cuộc gọi. Cả H.323 và SIP đều hỗ trợ tất cả các dịch vụ cần thiết, tuynhiên có một số điểm khác biệt giữa hai chuẩn này.  H.323 hỗ trợ hội nghị đa phương tiện rất phức tạp. Hội nghị H.323 về nguyên tắc có thể cho phép các thành viên sử dụng những dịch vụ như bảng thôngbáo, trao đổi dữ liệu, hoặc hội nghị video.  SIP hỗ trợ SIP-CGI (SIP-Common Gateway Interface) và CPL (Call Processing Language).  SIP hỗ trợ điều khiển cuộc gọi từ một đầu cuối thứ 3. Hiện nay H.323 đang được nâng cấp để hỗ trợ chức năng này. SIP H.323Nguồn gốc IETF ITU-TQuan hệ mạng Ngang cấp Ngang cấpKhởi điểm Kế thừa cấu trúc HTTP. Kế thừa Q.931, Q.SIGĐầu cuối SIP H.323  Proxy ServerServer  Redirect Server H.323 Gatekeeper  Location Server 54
  • 64.  Registrar Servers.Khuôn dạng Text, UTF-8 Nhị phânTrễ thiết lập 1.5 RTT 6-7 RTT hoặc hơncuộc gọi Có 2 lựa chọn: Phiên bản 1 và 2: máy chủ phải giám sát trong suốt thời gian cuộcGiám sát trạng  trong thời gian thiết gọi và phải giữ trạng thái kết nốithái cuộc gọi lập cuộc gọi TCP. Điều này hạn chế khả năng  suốt thời gian cuộc gọi mở rộng và giảm độ tin cậyBáo hiệu Có hỗ trợ Khôngquảng bá Sử dụng các giao thức khác Gatekeeper điều khiển băng thông.Chất lượng như RSVP, OPS, OSP để H.323 khuyến nghị dùng RSVP đểdịch vụ đảm bảo chất lượng dịch vụ lưu dữ tài nguyên mạng. Đăng ký tại Registrar Chỉ đăng ký khi trong mạng cóBảo mật server, có xác nhận đầu cuối Gatekeeper, xác nhận và mã hoá và mã hoá theo chuẩn H.235. Định vị đầu cuối sử dụng E.164Định vị đầu Dùng SIP URL để đánh địa hoặc tên ảo H.323 và phương phápcuối và định chỉ. Định tuyến nhờ sử dụng ánh xạ địa chỉ nếu trong mạng cótuyến cuộc gọi Redirect và Location server Gatekeeper. Chức năng định tuyến do Gatekeeper đảm nhiệm. Được thiết kế nhằm hỗ trợ rất nhiều tính năng hội nghị, kể cả thoại, Hỗ trợ các tính năng củaTính năng thoại hình ảnh và dữ liệu, quản lý tập cuộc gọi cơ bản trung nên có thể gây tắc nghẽn ở GatekeeperTạo tính năng Dễ dàng, sử dụng SIP-CGI H.450.1và dịch vụ mới và CPL 55
  • 65. Khả năng Dễ dàng Hạn chếmở rộng Chương 4. Kết nối giữa mạng VoIP và PSTN4.1. Mạng báo hiệu SS74.1.1. Các thành phần trong mạng báo hiệu SS74.1.1.1. SSP (Service Switch Point) SSP luôn gắn liền với chức năng chuyển mạch. Do chuyển mạch được phân cấp(sự phân cấp của hệ thống viễn thông) nên các SSP cũng được phân cấp. Một chuyểnmạch với chức năng SS7 sẽ có 2 giao diện:  giao diện kết nối chức năng thoại  giao diện kết nối cho dữ liệu SS7 Có thể nói các chuyển mạch đồng nghĩa với SSP. Bởi lẽ, các SSP chuyển báohiệu cho cuộc gọi thành các bản tin báo hiệu SS7. Chức năng chính của SSP là xử lýcuộc gọi, quản lý cuộc gọi và giúp định tuyến cuộc gọi tới đích.4.1.1.2. SCP (Service Control Point) SCP cung cấp các dịch vụ truy cập cơ sở dữ liệu (CSDL) tới mạng điện thoại. Vídụ dịch vụ của SCP là dịch vụ chuyển đổi số 1-800 (toll-free) hay dịch vụ Localnumber Portability (LNP) ở Mỹ. SCP hoạt động như là một giao diện tới máy tính cólưu CSDL.4.1.1.3. STP (Service Tranfer Point) STP được xem như là các router trong mạng SS7. Chức năng của chúng là địnhtuyến các bản tin giữa hai SSP hoặc giữa SCP và SSP. Không nhất thiết phải có mộtSTP giữa hai SSP để truyền tin cho nhau nhưng bản tin muốn từ SSP tới SCP thì nhấtthiết phải đi qua STP. Ở một số nước thì chức năng của STP thường được tích hợpvào SSP. Thông thường hai STP thường được nối với nhau thành cặp. Trong đó, mộtSTP là STP hoạt động chính còn STP kia để dự phòng. Trong đó, mô hình client-server giữa các SSP và SCP; mô hình client-client vớihai SSP với nhau. Và STP là chức năng định tuyến bản tin SS7 trong các mô hình này. 56
  • 66. Thông thường thì SSP chia làm hai loại: quốc gia và quốc tế. Có những SSP có thể cócả hai chức năng này- SSP lai. Mỗi nước sẽ có tối thiểu một SSP lai. SSP này làmnhiệm vụ như một gateway quốc tế nhằm định tuyến bản tin từ phiên bản quốc giasang phiên bản quốc tế theo chuẩn ITU-T. Như vậy cần STP gateway để định tuyếnbản tin giữa các SSP gateway với nhau(chuyển đổi cách đánh địa chỉ giữa các nước). Hình 30. Mạng báo hiệu SS74.1.2. Liên kết trong mạng SS7 Hình 31. Các liên kết trong mạng SS7  Liên kết A (Access): Liên kết A nối giữa SSP với STP, hoặc giữa SCP với STP. 57
  • 67.  Liên kết B (Bridge): Nối giữa STP thuộc cặp này với STP thuộc cặp khác. Liên kết này cho phép mở rộng mạng SS7 để có thể định tuyến bản tin trong mạng.  Liên kết C (Cross): Liên kết C nối hai STP thành một cặp. Việc liên kết này giúp cho hai STP hoạt động như là một STP chính và một STP dự phòng trong trường hợp STP chính bị hỏng hoặc tắc nghẽn xảy ra.  Liên kết D (Diagonal): Nối giữa các STP thuộc cấp thấp với STP thuộc cấp cao hơn. Ví dụ như nối giữa STP địa phương (local) với STP liên tỉnh (regional)  Liên kết E (Extended): Nối trực tiếp một SSP với STP không thuộc chủ của nó.  Liên kết F (Full associated): Nối hai SSP trực tiếp với nhau không cần thông qua STP.4.1.3. Định tuyến trong mạng SS7 Việc định tuyến trong mạng SS7 là hop-by-hop trên cơ sở tập các luật sau:  Một bản tin SS7 xuất phát từ SSP tới trực tiếp SSP đích nếu như có liên kết F giữa chúng.  Nếu liên kết F không tồn tại thì bản tin đó được định tuyến từ SSP tới STP chủ của nó qua liên kết A. Nếu như liên kết này không hoạt động thì sẽ sử dụng liên kết A thứ hai nối tới STP dự phòng.  Một bản tin từ SSP chuyển tới STP chủ hoạt động và được chuyển tiếp đi  Nếu bản tin đã đến STP của SSP đích thì được định tuyến qua liên kết A tới SSP đích. Nếu liên kết A này không hoạt động thì sẽ được định tuyến tới liên kết C gắn với STP dự phòng của SSP đích. Giả sử có một thuê bao ở tổng đài có PC (point code) là 1.4.2 cần thiết lập cuộcgọi với một thuê bao ở tổng đài có PC là 1.4.3. Vì giữa hai tổng đài này không có liênkết F nối trực tiếp nên bản tin báo hiệu SS7 sẽ được định tuyến qua mạng SS7. Ở đâymỗi tổng đài được đại diện là một SSP là giao diện của tổng đài với mạng SS7. Giả sửcuộc gọi của chúng ta có thể được thực hiện với sự có mặt của tổng đài Tandem có PClà 1.4.6 nối trực tiếp với hai tổng đài nguồn và đích. Có một chú ý trước khi đi vào nghiên cứu quá trính thiết lập tuyến của ví dụ nàylà việc định tuyến của mạng SS7 là hop-by-hop, tức là đường đi sẽ được xác định theotừng chặng trên đường đi của nó. Quá trình định tuyến của mạng SS7 liên hệ chặt chẽvới sự phân cấp của mạng viễn thông, bài toán định tuyến chủ yếu dựa trên mô hình 58
  • 68. phân chấp (sự có mặt của các tổng đài Toll), các tổng đài Tandem nhằm giảm lưulượng mạng ở tuyến dưới dồn lên tuyến trên trong một vùng miền. Bài toán định tuyếnđơn giản hơn bài toán định tuyến trong mạng gói khác, ví dụ như mạng IP. Hình 32. Định tuyến bản tin trong mạng SS7 SSP 1.4.2 tra bảng định tuyến xác định rằng không thể thiết lập cuộc gọi trực tiếptới SSP có PC là 1.4.3 nhưng có thể thông qua tổng đài Tandem có PC=1.4.6. SSP nàysẽ gửi bản tin ISUP IAM tới SSP 1.4.6 với OPC là 1.4.2; DPC là 1.4.6 và TCIC thôngbáo kênh logic (đường trunk) sẽ được dành cho cuộc gọi trên chặng từ nó đến Tandem.Bản tin này được định tuyến qua STP và được gửi tới SSP 1.4.6. SSP này xác định nókhông phải là đích của số thuê bao bị gọi trong bản tin IAM. Nó kiểm tra bảng địnhtuyến thì thấy rằng đó là thuê bao thuộc SSP 1.4.3. SSP 1.4.6 gửi bản tin với OPC là1.4.6, DPC là 1.4.3 và TCIC là 89 ý nghĩa giống hệt như báo tin trước. Khi SSP 1.4.3nhận được bản tin này, nó biết được đây là thuê bao thuộc sự quản lý của nó. SSP điểukhiển báo hiệu phía thuê báo, điều khiển chuyển mạng,.. Các bước báo hiệu tiếp theođược thực hiện tương tự để thiết lập cuộc gọi.4.1.4. Giao thức trong mạng SS7 59
  • 69. Hình 33. Giao thức SS7  Message Transfer Part (MTP) Lớp 1,2,3 cung cấp giao thức giao vận cho cho tất cả các giao thức SS7 khác. Chức năng của MTP bao gồm đặc tính giao diện mạng, truyền tin tin cậy, xử lý bản tin và định tuyến.  Signaling Connection Control Part (SCCP) cung cấp dịch vụ định địa chỉ đầu cuối-đầu cuối và định tuyến bản tin lớp 4 như Transaction Capabilities Application Part (TCAP).  Telephone User Part (TUP) là hệ thống báo hiệu link-by-link được sử dụng để kết nối cho cuộc gọi thoại và fax.  ISDN User Part (ISUP) là giao thức sử dụng để thiết lập và duy trì kết nối cho cuộc gọi thoại và dữ liệu dựa trên mạng kênh.  TCAP cho phép truy cập tới CSDL từ xa, cung cấp các thông tin định truyến và các các đặc trưng khác cho các thành phần mạng ở xa.4.1.4.1. Giao thức lớp Lớp vật lý MTP1 Lớp vật lý thiết đặt các đặc tính lý, điện của liên kết báo hiệu. Chức năng của lớpnày giống như Lớp vật lý của mô hình OSI, có thể là:  Chuẩn T1 hay DS1 truyền trên 2 cặp cáp xoắn đôi với băng thông 1,544Mb/s, với 24 kênh song công 64kb/s và tốc độ đồng bộ khung là 8kb/s  Chuẩn E1 truyền trên 2 cặp cáp xoắn đôi với băng thông 2,048Mb/s với 32 kênh song công, mỗi kênh 64kb/s. Trong đó, một kênh để truyền báo hiệu (TS16) và 1 kênh để truyền đồng bộ  Kênh 56kb/s hoặc 64kb/s  Chuẩn V.35: giao diện giữa đơn vị dịch vụ số (DSU) và thiết bị dữ liệu gói, với quy ước về chân, cấu hình điện cho 37 chân.4.1.4.2. Giao thức lớp Liên kết dữ liệu MTP2 Giao thức MTP2 tạo liên kết điểm-điểm đáng tin cậy giữa hai đầu cuối trongmạng và hoạt động với cơ chế sau:  Cơ chế phát hiện lỗi và Sửa lỗi trong suốt quá trình truyền tin. Quá trình sủa lỗi được cung cấp bởi mã CRC-16. Nếu phát hiện ra lỗi, MTP2 sẽ yêu cầu truyền lại 60
  • 70.  Đánh số thứ tự các gói cho phép phát hiện ra bản tin bị mất trong quá trình truyền. Nếu thấy mất bản tin, phía thu sẽ yêu cầu truyền lại. Yêu cầu truyền lại có thế gắn liền với dữ liệu người dùng của bản tin tiếp theo. Dữ liệu này có thế từ ứng dụng lớp 4 đưa xuống (SCCP, ISUP, TUP, or TCAP).  Chỉ thị trạng thái liên kết được duy trì và kiểm soát trong suốt quá trình hoạt động giữa hai trạm Giao thức MTP2 sử dụng các gói được gọi là đơn vị báo hieuj để truyền các bảntin SS7. Các đơn vị báo hiệu này cho phép phát hiện lỗi, chỉ thị trạng thái liên kết vàbản tin SS7 cần truyền. Có 3 loại đơn vị báo hiệu MTP2 như sau:  Fill-in Signal Unit (FISU): cung cấp phát hiện lỗi trong mạng SS7, được truyền khi không có lưu lượng trên mạng để kiểm soát trạng thái hoạt động của mạng. Hình 34. Cấu trúc bản tin FISU  Link Status Signal Unit (LSSU) cung cấp thông tin về trạng thái đường truyền giữa hai điểm báo hiệu kết nối trực tiếp với nhau. Hình 35. Cấu trúc bản tin LSSU  Message Signal Unit (MSU): cung cấp cấu trúc cho phép mang thông tin cua bản tin báo hiệu. Thông tin này là trường tải tin cho bản tin cấp cao hơn như SCCP, TUP, ISUP, and TCAP. 61
  • 71. Hình 36. Cấu trúc bản tin MSU4.1.4.3. Giao thức Lớp mạng MTP3 Lớp mạng của SS7 được gọi là MTP3. Giao thức MTP3 định tuyến bản tin SS7dựa vào bản tin lớp 2 nhận được. MTP3 cung cấp khởi thủy cho phép truyền tin giữacác giao thức lớp 4 như SCCP, ISUP, TUP, và TCAP cũng như truyền và nhận tin từMTP2. Hình 37. Cấu trúc bản tin MTP34.1.4.4. Bản tin Lớp ứng dụng4.1.4.4.1. (Signalling Connection Control Part) SCCP cung cấp dịch vụ mạng ở mức đỉnh của MTP3. Sự kết hợp của hai lớp nàyđược gọi là Network Service Part (NSP) của SS7. TCAP sử dụng dịch vụ của SCCP đểtruy cập CSDL trong mạng SS7. SCCP cung cấp các giao diện dịch vụ tới TCAP vàISUP. Dịch vụ định tuyến SCCP cho phép STP thực hiện Global Title Translation(GTT) bằng các xác định DPC và số hệ thống con trong CSDL đích. Các dịch vụ cungcấp bởi SCCP gồm:  Dịch vụ hướng kết nối (Connection-Oriented Services): SCCP hỗ trợ dịch vụ hướng kết nối cho TCAP và ISUP nhưng dịch vụ này hieenj nay không còn được sử dụng.  Dịch vụ không hướng kết nối: SCCP cung cấp dịch vụ không hướng kết nối lớp Giao vận cho TCAP (Transaction Capabilities Applications Part). Các dịch vụ cả TCAP gồm 800,888,900, điện thoại thẻ, ứng dụng mobile. SCCP và MTP3 62
  • 72. kết hợp với nhau để cung cấp các dịch vụ non-circuit này. SCCP cũng cho phép STP thực hiện GTT thay cho tổng đài đầu cuối. Tổng đài đầu cuối xem số 800 như là chức năng dịch địa chỉ. Bởi vì global title addresses không được định tuyến mà SCCP ở tổng đài đầu cuối sẽ định tuyến bản tin truy vấn tới STP. Bản tin được truyền giữa SCCP và MTP được gọi là Unitdata Messages (UDTs)và Unitdata Service Messages (UDTSs). Hình 38. Quá trình truy vấn thông tin trên SCP 1. Khi tổng đài nhận biết cần thiết lập một cuộc gọi 800, nó sẽ thực hiện một truy vấn tới CSDL. TCAP sẽ truyền số gọi và bị gọi tới SCCP và sau đó được điền đầy đủ các thông tin thích hợp trong UDT và đặt bit chỉ thị định tuyến yêu cầu dịch vụ GTT. SCCP định địa chỉ tới STP chủ và truyền bản tin tới MTP. MTP của tổng đài sẽ tạo một MSU vào chuyển tiếp tới STP. 2. Chức năng SCCP trong STP nhận truy vấn và sử dụng bảng dịch địa chỉ để định lại địa chỉ với số hiệu của subsytem (Subsystem Number -SNN) trong CSDL. SNN bao gồm DPC và địa chỉ của CSDL đích. MTP trong STP sẽ chuyển tiếp truy vấn tới SCP. 3. SCCP trong SCP sẽ truyền bản tin tới TCAP và chạy truy vấn CSDL này. CSDL sẽ thực hiện chuyển số yêu cầu thành số định tuyến và truyền thông tin cho SCCP với DPC để gửi trả lại thông tin. SCCP cũng đặt bit mô tả định tuyến để chỉ thị MTP sẽ định tuyến dựa trên DPC.4.1.4.4.2. ISDN User Part ( ISUP) ISUP kết nối, quản lý, và hủy tất cả các cuộc gọi trong PSTN. Thuê bao có thể làISDN, analog, mobile. Ngoài ra, ISUP có thể sử dụng SCCP định tuyến thông tin báohiệu qua mạng. Đường đi của báo hiệu có thể không giống nhau cho mỗi bản tin liênquan tới mỗi một kênh khác nhau. SCCP cho phép bản tin ISUP có thể được địnhtuyến trực tiếp từ trạm nguồn đến trạm đích. 63
  • 73. Trường kiểu bản tin trong bản tin ISUP cho phép xác định kiểu bản tin đượcmạng trong MSU với các giá trị cụ thể như sau.Bản tin Tên đầy đủ Ý nghĩa IAM Initial Address Sử dụng để thiết lập cuộc gọi. Bản tin này thường chứa số thuê bao bị gọi ACM Address Complete Thông báo rằng cuộc gọi đang được thiết lập. ANM Answer Phía bị gọi đã có tín hiệu trả lời REL Release Cuộc gọi bị hủy. Cũng có thể sử dụng kiểu bản tin này để thông báo rằng tổng đài tandem hoặc tổng đài đích không thể thiết lập được kết nối. RLC Release Complete Đã nhận được bản tin REL và kênh thoại được hủy COT Continuity Test Dùng để kiểm tra tính liên tục của đường trunk CPG Call Process Đang rung chuông thuê bao bị gọi SUS Suspend Dừng một cuộc gọi nhưng kết nối của nó vẫn được giữ RES Resume Phục hồi trạng thái cuộc gọi được dừng trước đó.SUS và RES dùng cùng một cấu trúc bản tin và tham số. FOT Forward Transfer INR Information Request Yêu cầu thông tin từ phía tổng đài đích tới tổng đài nguồn để lấy thêm thông tin. INF Information Cung cấp thông tin yêu cầu bởi INR4.1.5. Các bước thiết lập cuộc gọi trong mạng SS7 Hình 39. Quá trình thiết lập cuộc gọi trong mạng SS7 64
  • 74. 1.Người gọi nhấc ống nghe, được nhận biết bởi tổng đài địa phương A nhờ báo hiệu một chiều. 2.Tổng đài A phát tín hiệu mời quay số. 3.Người gọi quay số. 4.Vì số thuê bao bị gọi không nằm trong tổng đài A, nên nó phải xác định cách để thiết lập cuộc gọi thông qua bảng định tuyến. Thông tin bảng định tuyến sẽ cho phép xác định kênh còn rỗi cho phép thiết lập cuộc gọi. Tổng đài này sẽ gửi bản tin IAM qua mạng SS7 tới tổng đài có chứa thuê bao người bị gọi. 5.Khi tổng đài B nhận được bản tin IAM, nó sẽ gửi bản tin ACM tới tổng đài A thông báo tuyến đã sẵn sàng và để A phát tín hiệu cho người gọi biết. Đồng thời, B cũng phát tín hiệu rung chuông tới thuê bao bị gọi. 6.Khi thuê bao bị gọi nhấc máy, bản tin ANM được gửi từ tổng đài B tới A để thông báo bắt đầu cuộc gọi. 7.Cuộc gọi được thực hiện. Với quá trình này, thông tin là trong suốt. 8.Giả sử người gọi dập máy trước, khi tổng đài A nhận được báo hiệu này lập tức gửi bản tin REL tới tổng đài B để chấm dứt cuộc gọi 9.Tổng đài B gửi tín hiệu kết thúc cuộc gọi tới thuê bao bị gọi và bản tin RLC tới tổng đài A để thông báo việc hủy cuộc gọi là xong.4.2. Giao thức Sigtran Giao thức SIGTRAN là giao thức tin cậy để truyển tải các bản tin SS7 qua mạngIP. Cấu trúc gồm 2 thành phần : giao thức truyển tải chung cho các lớp giao thức SS7và module tương thích để giả lập các lớp thấp hơn của giao thức. Ví dụ nếu module xửlí SS7 trong Softswitch xử lí bản tin MTP lớp 3, thì giao thức sigtran cung cấp cácchức ăng tương đương với các chức năng của MTP lớp 2. Nếu nó xử lí ở mức ISUPvà SCCP, thì giao thức sigtran cung cấp chức năng giống như MTP lớp 2 và lớp 3,tương tự đối với TCAP. Do đó SIGTRAN là một tập các giao thức để giả lập (thựchiện adaptation) SS7 trong mạng IP. Giao thức SIGTRAN cung cấp tất cả các chức năng cần thiết để hỗ trợ cho báohiệu SS7 qua mạng IP, bao gồm:  Điều khiển luồng  Phân phối tuần tự các bản tin trong các luồng điều khiển độc lập. 65
  • 75.  Xác định điểm báo hiệu nguồn và đích.  Xác định kênh thoại.  Phát hiện lỗi, truyền lại và các thủ tục sửa sai khác.  Khôi phục lại các thành phần nằm trong các đường chuyển tiếp.  Điều khiển tránh nghẽn trên Internet.  Xác định trạng thái của các thực thể trên mạng (đang phục vụ, ngừng phụcvụ).  Hỗ trợ cơ chế bảo mật để bảo vệ các thông tin báo hiệu.  Mở rộng khả năng hỗ trợ về bảo mật và các yêu cầu phát triền về sau. Hình 40. Giao thức Sigtran4.2.1. M2UA/ M2PA M2UA và M2PA để truyền các bản tin lớp 2. Trong đó, M2UA (MTP L2 UserAdapter) để truyền bản tin lớp 2 giữa hai thực thể không ngang hàng trong mạng (giữaMedia Gateway Controller hay Softswitch với Signalling Gateway); còn M2PA (MTPL2 Peer-to-Peer Adapter) là giữa hai thực thể ngang hàng với nhau (giữa hai signalinggateway với nhau). Mô hình M2UA Mô hình M2PA Hình 41. So sánh giữa M2UA và M2PA 66
  • 76. M2PA và M2UA khác nhau ở những điểm sau:  M2PA: Gateway báo hiệu là một điểm báo hiệu số 7 với một mã điểm báo hiệu.  M2UA: Gateway báo hiệu không phải là một điểm báo hiệu số 7 không có mã điểm báo hiệu.  M2PA: Kết nối giữa Gateway báo hiệu và điểm báo hiệu IP như là một link báo hiệu SS7.  M2UA: Kết nối giữa Gateway báo hiệu và MGC không phải là một liên kết báo hiệu. Thực ra, nó chỉ là sự mở rộng của MTP từ GW báo hiệu tới MGC.  M2PA: Gateway báo hiệu có thể có các lớp báo hiệu cao hơn như SCCP.  M2UA: Gateway báo hiệu không có lớp báo hiệu cao hơn giống như nó không có MTP3.  M2PA: dựa trên MTP3 cho các thủ tục quản lý.  M2UA: sử dụng các thủ tục quản lý của bản thân nó.  MP2P: Điểm báo hiệu IP xử lý MTP3 và các dịch vụ của MTP2 cung cấp  M2UA: MGC truyền tải MTP3 và các dịch vụ MTP2 cho MTP2 của Gateway báo hiệu xử lý.4.2.2. M3UA M3UA được dùng để truyền tải các bản tin báo hiệu các user của MTP3 nhưISUP, TUP, SCCP trên nền IP sử dụng SCTP. Các bản tin TCAP hay RANAP cũngnhư các giao thức lớp trên của SCCP có thể truyền băng SCCP sử dụng M3UA haymột giao thức SIGTRAN khác gọi là SUA sẽ được nói ở phần sau. M3UA được sử dụng giữa Gateway báo hiệu và MGC hay cơ sở dữ liệu điệnthoại IP. Gateway báo hiệu sẽ kết cuối MTP2, MTP3 và phân phối ISUP, TUP, SCCPhay các bản tin lớp trên của MTP3 khác, cũng như các sự kiện quản lý mạng MTP trêncác phiên SCTP tới Softswitch hay cơ sở dữ liệu thoại IP. Các lớp ISUP hay SCCP ở điểm báo hiệu IP không nhận thấy các dịch vụ MTP3không được cung cấp ở tại điểm báo hiệu IP, mà bởi Gateway báo hiệu ở xa. Tương tựMTP3 ở GW báo hiệu không nhận thấy giao thức người sử dụng ở trên nó thực chất làphần giao thức ở xa trên lớp M3UA. Từ đấy ta thấy bản chất của M3UA là M3UA mởrộng truy cập các dịch vụ của GW báo hiệu cho điểm báo hiệu IP. Nếu điểm cuối IP 67
  • 77. được kết nối với nhiều hơn một GW báo hiệu, thì M3UA ở điểm cuối IP sẽ giám sáttrạng thái của các điểm báo hiệu đích , và địh tuyến bản tin dựa theo độ sẵn sàng vàtrạng thái nghẽn của route tới những đích đó qua từng GW báo hiệu. M3UA không bị giới hạn bởi trường thông tin báo hiệu 272 octet được chỉ địnhbởi bản tin SS7 MTP lớp 2. Các khối thông tin lớn hơn được điều khiển trực tiếp bởiM3UA/SCTP mà không cần các thủ tục phân đoạn và tái hợp nhất các đoạn ở các lớpcao hơn theo các tiêu chuẩn SCCP và ISUP. Tuy nhiên, SG có giới hạn cực đại là 272octet khi kết nối tới mạng báo hiệu SS7 không hỗ trợ truyền các khối thông tin có kíchthước lớn hơn tới đích. Đối với mạng MTP băng rộng, SG sẽ phân mảnh các bản tinISUP và SCCP lớn hơn 272 octet như yêu cầu. Tại SG, lớp M3UA cung cấp liên kết nối với các chức năng quản lý MTP lớp 3để hỗ trợ các hoạt động báo hiệu không liên kết giữa mạng SS7 và mạng IP. Ví dụ SGhiển thị MTP-3 user ở xa tại điểm báo hiệu IP khi điểm báo hiệu đó có thể tới đượchoặc không thể tới được hoặc khi xảy ra hiện tượng nghẽn mạng hoặc bị ngăn chặn.Lớp M3UA tại điểm báo hiệu IP giữ trạng thái của các tuyến để tới được các nodesSS7 ở xa và có thể yêu cầu trạng thái của các nodes SS7 ở xa từ lớp M3UA tại SG.Lớp M3UA tại điểm báo hiệu IP cũng có thể chỉ ra SG mà tại đó M3UA bị nghẽn.SUA để truyền các bản tin SCCP.4.2.3. SUA SUA (SCCP User Adaptation Layer) là giao thức được định nghĩa bởi IETF đểtruyển tải các bản tin báo hiệu SS7 SCCP phần user qua mạng IP sử dụng giao thứcSCTP. SUA được sử dụng giữa SG và các IP endpoint và giữa IP Signalling endpoint.SUA cũng hỗ trợ cả các dịch vụ không kết nối tuần tự và không tuần tự và các dịch vụhướng kết nối 2 chiều có và không có điều khiển luồng và phát hiện mất bản tin hoặccác lỗi không tuần tự. Để phân phối tới các điểm báo hiệu SS7, các bản tin SS7 được định tuyến tới SGdựa trên mã điểm báo hiệu và số SCCP. SG định tuyến các bản tin SCCP tới các IPendpoint ở xa. Nếu tồn tại một IP endpoint dự phòng, SG có thể chia sẻ tải giữa các IP ndpointsđang kích hoạt sử dụng giải pháp quay vòng round-robin. Chú ý chia sẻ tải của các bảntin TCAP chỉ xuất hiện trong bản tin đầu tiên trong hỏi đáp TCAP; thứ tự các bản tinTCAP trong cùng khoảng thời gian hỏi đáp luôn luôn gửi tới IP endpoint đã lựa chọncho bản tin đầu tiên, trừ phi các endpoints chia sẻ trạng thái thông tin và SG hiểu được 68
  • 78. bản tin cấp phát chính sách của các IP endpoint. SG cũng có thể thực hiện được chứcnăng chuyển dịch nhãn toàn cầu (Global Title Translation) để chỉ ra đích của bản tinSCCP. SG định tuyến trên nhãn, các chữ số xuất hiện trong bản tin đầu vào, như số bịgọi hoặc số định danh thuê bao di động. Để chuyển tải các dịch vụ hướng kết nối, SCCP và SUA giao tiếp tại SG để liênkết 2 phiên kết nối cần cho truyền dữ liệu hướng kết nối giữa điểm báo hiệu SS7 và IPendpoint. Bản tin được định tuyến bởi SG tới điểm báo hiệu dựa trên mã điểm báohiệu (trong trường địa chỉ MTP-3) và IP endpoint dựa trên địa chỉ IP (trong mào đầuSCTP). SUA cũng có thể được sử dụng để chuyển tải thông tin về user SCCP trực tiếpgiữa các IP endpoints hơn là qua SG. SG chỉ cần để kết nối với báo hiệu SS7 trongmạng chuyển mạch kênh.4.2.4. Kết nối mạng VoIP với mạng PSTN4.2.4.1. Cuộc gọi bắt đầu từ mạng VoIP (SIP) và kết thúc tại PSTN Chú ý ở mô hình này, ta không đề cập tới sự có mặt của Proxy Server hayRedirect Server mà coi bản tin báo hiệu SIP đến thẳng Gateway. Thực chất vấn đề làkhi đầu cuối SIP quay số, Proxy Server đã biết đây là cuộc gọi ngoại mạng nên nó sẽxác định Gateway thích hợp để thực hiện cuộc gọi. Một chú ý nữa là trong mô hìnhnày, Gateway đóng vai trò vừa là Media gateway và Signaling Gateway. Hình 42. Quá trình thiết lập cuộc gọi SIP-PSTN 69
  • 79. 1.SIP User Agent gửi bản tin INVITE tới Gateway yêu cầu kết nối với một thuê bao PSTN. 2. Gateway trả lời bằng bản tin 100 Trying ngay sau khi khởi tạo bản tin SS7 IAM tới mạng PSTN để lập tuyến tới thuê bao bị gọi. Chú ý là việc gửi bản tin 100 Trying cũng có thể thực hiện trước khi gửi bản tin IAM, điều này phụ thuộc vào việc cấu hình trên Gateway. 3. Mạng PSTN trả về bản tin ACM sau khi đã xác định được địa chỉ thuê bao bị gọi. Bản tin SS7 này được chuyển thành bản tin SIP 183 Session Progress 4. Để báo rằng thuê bao bị được đang được rung chuông thì ở đây, mạng SIP trọn một cách an toàn là truyền nguyên trạng thái tín hiệu nhận được trên Gateway đến thuê bao SIP. Việc này cho phép báo hiệu chính xác trạng thái đang diễn ra đề phòng có trục trặc trong lúc thực hiện kết nối với PSTN. Thông tin này được truyền bằng một luồng RTP một chiều – biểu diễn như hình vẽ. 5. Khi thuê bao bị gọi nhấc máy, bản tin SS7 ANM được gửi đi. Bản này được chuyển thành bản tin 200OK báo hiệu cổng trên Gateway sẵn sàng cho cuộc gọi. 6. Sau khi thuê bao SIP trả lời bằng bản tin ACK thì luồng RTP được thiết lập 2 chiều giữa Gateway và SIP User Agent truyền tải tín hiệu thoại trên Gateway nhận được từ tổng đài của mạng PSTN 7. Giả sử thuê bao SIP dập máy trước, nó sẽ gửi bản tin BYE tới Gateway để giải phóng cuộc gọi. Gateway gửi bản tin REL tới tổng đài PSTN để hủy kết nối. Sau khi Gateway gửi bản tin 200 OK và nhận được bản tin RLC, cuộc gọi chính thức chấm dứt.4.2.4.2. Cuộc gọi bắt đầu từ PSTN và kết thúc ở mạng VoIP Trong mô hình cuộc gọi này rất giống với trường hợp cuộc gọi xuất phát từ mạngVoIP và kết thúc ở PSTN. 70
  • 80. Hình 43. Quá trình thiết lập cuộc gọi PSTN - SIP Thông tin báo hiệu vẫn được chuyển đổi tương đương giữa bản tin SS7 và SIP.Để thông báo trạng thái rung chuông của mình, thuê bao SIP gửi trả bản tin 180Ringing tới Gateway. Bản tin này tương ứng với bản tin SS7 ACM. Khi đó, Gatewaysẽ gửi tín hiệu thoại một chiều mô tả trạng thái của thuê bao bị gọi tới thuê bao gọi.Việc này có tác dụng rất lớn trong việc đảm bảo thông tin trạng thái thiết lập đườngtruyền được kiểm soát bởi thuê bao gọi.4.2.4.3. Cuộc gọi PSTN – PSTN thông qua mạng VoIP. Chuẩn SIP-T Do vấn đề làm việc liên mạng giữa SIP và PSTN đặt ra ngày càng cấp thiết. Nênnhóm IETF đã tập trung nghiên cứu để tìm gia những vấn đề cần bổ sung cho giaothức SIP hiện tại khi làm việc liên mạng với mạng điện thoại truyền thống PSTN. Mặtkhác một thuộc tính rất quan trọng của bất kỳ một mạng điện thoại SIP nào là sự trongsuốt mọi dịch vụ thoại truyền thống như chờ cuộc gọi, free phone được triển khai vớicác giao thức mạng PSTN như báo hiệu số 7 phải được cung cấp bởi SIP. Một thuộc tính quan trọng khác của mạng điện thoại SIP là khả năng định tuyếncủa các yêu cầu SIP. Một yêu cầu SIP dùng để thiết lập cuộc gọi phải chứa đầy đủthông tin trong header của nó để cho phép nó được định tuyến tới đích bởi Proxyserver. Các tham số chính của một cuộc gọi như số bị gọi phải được truyền tải từ bảntin báo hiệu số 7 sang các yêu cầu của SIP. 71
  • 81. SIP-T (SIP Telephone) cố gắng cung cấp một phương thức tích hợp báo hiệuthoại vào bản tin SIP. Nó thoả mãn hai thuộc tính trên thông qua các kỹ thuật được làđóng gói và dịch. ở một gateway SIP-ISUP, bản tin SS7-ISUP được đóng gói ở trongSIP để những thông tin cần thiết cho các dịch vụ không bị loại bỏ trong các yêu cầucủa SIP. Tuy nhiên, Proxy server cái mà chịu trách nhiệm các quyết định định tuyến,không đòi hỏi phải hiểu ISUP, do đó đồng thời những thông cần thiết nhất được dịchtừ một bản tin ISUP sang các mào đầu tương ứng của SIP để quyết định các yêu cầucủa SIP sẽ được định tuyến như thế nào. Hình 44. Cấu trúc bản tin SIP-T Trong khi SIP thuần túy có mọi công cụ cần thiết cho việc thiết lập và kết thúccuộc gọi. Nó không có một cơ chế nào để mang những thông tin trong thời gian cuộcgọi như truy xuất ISUP INF/INR. Do đó cần phải có một sự cung cấp việc truyềnnhững thông tin tuỳ biến của lớp ứng dụng ở trên. Các yêu cầu liên mạng giữa SS7-SIP Các chức năng của SIP-T Trong suốt báo hiệu ISUP Đóng gói bản ISUP trong bản tin SIP Khả năng định tuyến bản tin SIP phụ Dịch các thông tin của ISUP vào mào thuộc vào ISUP đầu của SIP Chuyển tiếp các bản tin báo hiệu của Sử dụng phương pháp INFO ISUP trong thời gian cuộc gọi 72
  • 82. Hình 45. Quá trình thiết lập cuộc gọi PSTN – PSTN thông qua mạng SIP Trong hình vẽ mô tả hoạt động của SIP trong việc thiết lập kết nối giữa hai tổngđài PSTN với nhau(thường để giảm chi phí thiết lập cuộc gọi đường dài).Bên cạnhviệc ánh xạ sang bản tin SIP cần thiết để thiết lập báo hiệu giữa hai Gateway thì bảntin bản tin SIP cũng nhúng cả nội dung bản tin SS7 trong đó. Việc này giúp không mấtthông tin báo hiệu cần thiết cho việc định tuyến tiếp theo ở mạng PSTN sau này. 73
  • 83. Chương 5. Khảo sát giao thức cuộc gọi VoIP SIP – PSTN trên thực tế5.1. Giới thiệu kiến trúc mạng VoIP được nghiên cứu Trước khi đi vào giới thiệu về việc thiết lập cuộc gọi SIP - PSTN, ta đi vào giớithiệu các thành chính trong mạng mà chúng ta tiến hành khảo sát như sau: Hình 46. Kiến trúc mạng VoIP nghiên cứu  Các thiết bị cần thiết cho mạng VoIP:  Media Gateway: là thiết bị Audio Codec Mediant 1000 có 2 giao diện mạng: o giao diện FXO kết nối với PSTN qua số thuê bao 7689333. o giao diện Ethernet kết nối với mạng nội bộ được cấp IP là 172.16.0.22/24.  SIP Server: đóng vai trò ở đây vừa là Proxy Server, Registrar Server, Location Server. Sip Server có địa chỉ IP public là 221.148.96.65.  SIP Phone: điện thoại Softphone có hỗ trợ giao thức SIP, được đăng kí với SIP Server với số thuê bao 7004 và có địa chỉ IP là 172.16.0.99.  Chương trình gọi điện thoại VoIP hỗ trợ giao thức SIP X-Lite, được đăng kí với Sip Server với số thuê bao là 7010 và có địa chỉ IP là 172.16.0.98. 74
  • 84.  Các thiết bị mạng IP:  Router: được cấu hình với địa chỉ IP là 123.30.4.2/25 được nối với ISP VDC thông qua modem ADSL.  Firewall: nhằm bảo vệ mạng VoIP khởi bị tấn công từ bên ngoài. Firewall có 3 giao diện mạng khác nhau o Giao diện với mạng Internet với địa chỉ 123.30.4.5/25 kết nối với Router để định tuyến gói tin ra ngoài. o Giao diện với mạng DMZ (mạng vùng biên): với dải địa chỉ 172.16.0.0/24 o Giao diện với mạng nội bộ (được bảo vệ): với dải địa chỉ 192.168.1.0/24 (nhưng bị không được nghiên cứu nên sẽ không được vẽ trong mô hình).  Hub: Vì muốn bắt gói tin gửi trong mạng giữa các thiết bị VoIP một các đơn giản nên ở đây ta sử dụng một Hub. Vì nếu thay Hub bằng Switch thì chúng ta sẽ không thực hiện được do Switch là thiết bị có xử lý địa chỉ MAC nên ta chỉ có thể bắt được các gói tin trên Card mạng của thiết bị hiện tại.5.2. Giới thiệu chương trình Wireshark Wireshark là một chương trình bắt gói tin trên mạng. Nó sẽ cố gắng bắt tất cả cácgói tin và hiển thị thông tin chi tiết nhất có thể. Mục đích của việc sử dụng Wiresharkcó thể là:  Quản trị mạng: kiểm tra các lỗi trên mạng  Bảo mật hệ thống: kiểm tra các lỗi về bảo mật  Phát triển hệ thống: gỡ rối hoạt động của giao thức  Các đối tượng khác: học về các giao thức nội tại của mạng 75
  • 85. Hình 47. Giao diện chính của chương trình Wireshark Wireshark có một số ưu điểm như sau:  Có thể chạy trên cả hệ thống UNIX và Windows  Bắt các bản tin trực tuyến trên card mạng  Hiện gói tin với thông tin về giao thức  Có thể mở và lưu lại các dữ liệu đã bắt được  Import and Export các gói tin từ rất nhiều chương trình khác  Lọc gói tin với nhiều tiêu chí khác nhau  Tìm kiếm gói tin với nhiều tiêu chí  Hiển thị gói tin với màu nổi bật dựa trên bộ lọc  Tạo rất nhiều thống kê5.3. Khảo sát giao thức cuộc gọi VoIP SIP – PSTN trên thực tế Ta sẽ mô tả cuộc gọi từ thuê bao SIP 7010 có IP là 172.16.0.98 tới số điện thoại0936.346.346. Có một chú ý trong mô hình cuộc gọi này là:  Toàn bộ thông tin báo hiệu SIP và thông tin cuộc gọi (trên luồng RTP) được định tuyến thông qua SIP-Server. Nên thực chất, Gateway và SIP Phone không hề biết sự có mặt của nhau; mọi công việc cần thiết đều được thực hiện trên SIP-Server. 76
  • 86.  Việc báo hiệu SIP ở đây có một số điểm khác so với chuẩn SIP được định nghĩa trong RFC 3261. (sẽ được làm rõ ở phần sau).Ta tiến hành bắt gói tin và thu được kết quả như sau: 77
  • 87. 78
  • 88. Hình 48. Kết quả thu được của giao thức cuộc gọi SIP – PSTN trên thực tế Trước khi đi vào phân tích cuộc gọi, ta sẽ đối chiếu với sơ đồ cuộc gọi được môtả giao thức cuộc gọi trong RFC 3666 - Session Initiation Protocol (SIP) PublicSwitched Telephone Network (PSTN) Call Flows. 79
  • 89. Hình 49. Giao thức cuộc gọi do IETF định nghĩaDựa trên kết qua thu được, ta phân tích và vẽ lại Giao thức cuộc gọi như sau: Hình 50. Quá trình thiết lập cuộc gọi SIP - PSTN 80
  • 90. 1. SIP Phone 7010 gửi bản tin INVITE tới SIP-Server để yêu cầu thiết lập cuộc gọi. SIP-Server trả lại bằng bản tin 100 Trying báo rằng nó đã nhận được bản tin INVITE và đang thiết lập cuộc gọi. Hình 51. Bản tin INVITE gửi tới Proxy Server để thiết lập cuộc gọi2. SIP-Server nhận thấy đây là cuộc gọi PSTN nên nó chuyển tiếp bản tin INVITE tới Gateway. Sau khi Gateway nhân được bản tin INVITE, nó trả lời bằng bản tin 100 Trying giống như trường hợp trên. Hình 52. Bản tin INVITE được gửi từ Proxy Server tới Gateway 81
  • 91. 3. Gateway gửi tín hiệu DC tới tổng đài nội hạt thông báo rằng nó nhấc máy. Tổng đài nội hạt tiến hành xác thực thông tin thuê bao và gửi tín hiệu mời quay số (tín hiệu 1VF – đơn tần).4. Khi nhận được tín hiệu mời quan số, Gateway tiến hành chuyển thông tin trong trường To của bản tin INVITE sang tín hiệu DTMF chứa số thuê bao được gọi tới tổng đài nội hạt; các thông tin khác chỉ được sử dụng giữa Gateway và mạng SIP.5. Gateway gửi bản tin 183 Session Progress thông báo cuộc gọi đang được thực hiện. Hình 53. Cấu trúc bản tin 183 Session Progress6. Lúc này, tổng đài nội hạt gửi bản tin IAM đi trên mạng SS7 để thiết lập tuyến nối giữa nó và tổng đài đích. Đồng thời nó cũng phát tín hiệu đang thực hiện cuộc gọi đến thuê bao gọi để người dùng giữ máy.7. Sau khi nhận được bản tin 183 Session Progress thuê bao SIP 7010 thiếp lập luồng RTP một chiều tới SIP-Server.8. Khi Gateway nhận được tín hiệu đang thiết lập cuộc gọi từ tổng đài nội hạt. Nó sẽ gửi bản tin 200 OK và thiết lập luồng RTP hai chiều tới SIP Server và được chuyển tiếp tới thuê bao 7010. Sau khi nhận được bản tin này thì luồng RTP được thiết lập trước đó được chuyển thành hai chiều và gửi bản tin ACK xác nhận đi. 82
  • 92. Hình 54. Cấu trúc bản tin 200 OK9. Lúc này, người sử dụng đầu cuối 7010 nghe thấy tiếng tút ngắn10. Sau khi tổng đài nội hạt nhận được bản tin ACM thông báo đã lập được tuyến. Nó sẽ nhận tín hiệu báo đang rung chuông từ tổng đài đích gửi về và chuyển tiếp cho thuê bao gọi.11. Tín hiệu đó được Gateway gửi tới người dùng và người dùng biết là thuê bao được gọi đang được rung chuông.12. Khi người được gọi nhấc máy, bản tin ANM được gửi đi và bắt đầu thực hiện cuộc gọi. Bây giờ thông tin cuộc gọi là “trong suốt”. Hình 55. Giao thức hủy cuộc gọi SIP - PSTN 83
  • 93. 13. Giả sử thuê bao SIP dập máy trước, bản tin BYE được gửi đi và luồng RTP được điều chỉnh lại chỉ theo một chiều từ SIP-Server về SIP-Phone. Hình 56. Cấu trúc bản tin BYE đến Proxy Server 14. Sau khi nhận được bản tin BYE, Gateway gửi tin hiệu DC tới tổng đài nội hạt để thông báo rằng thuê bao đã dập máy. Tổng đài sẽ gửi bản tin REL đi để hủy tuyến đã được thiết lập và được trả lời bằng bản tin RLC từ tổng đài đích. Hình 57. Cấu trúc bản tin BYE đến Gateway 15. Người sử dụng nghe thấy tiếng tút ngắn biết cuộc gọi kết thúc liền dập máy. Cuộc gọi được hoàn tất. Ở đây có một khái niệm mà chúng ta cần quan tâm đó chính là khái niệm Mediasớm (Early media). Media sớm ra đời nhằm giải quyết vấn đề khi thiết lập cuộc gọigiữa mạng SIP và PSTN(đặc biệt là cuộc gọi từ SIP sang PSTN). Do thiết bị đầu cuốiSIP sẽ phát media ngay khi gửi bản tin 200 OK; trong khi cuộc gọi chỉ được bắt đầuthực sự khi đầu cuối nhận được xác nhận ACK. Điều này làm cho phía bên kia khôngnghe được phần đầu của cuộc thoại. Ngoài ra, trong quá trình thực hiện cuộc gọi,người sử dụng không có cách nào đề biết được trạng thái của quá trình thiết lập cuộcgọi mà vốn dĩ đã quá quen thông qua các tiếng nghe được (tiếng tút ngắn, tút dài,..).Chính vì lý do đó, mà một luồng RTP được thiết lập “sớm” trước khi phiên media chocuộc gọi được thiết lập để truyền trạng thái được trả về của tổng đài thông báo về trạngthái thiết lập cuộc gọi cho người dùng. Đó chính là luồng RTP được thiết lập sau bản 84
  • 94. tin ACM của mạng SS7 và sẽ chứa tiếng chuông thu được trên đường trung kế (tronggiao thức cuộc gọi của RFC). Khác so với cuộc gọi được định nghĩa của RFC được trình bày ở trên, cuộc gọicủa chúng ta được thực hiện trên đường dây thuê bao nên sẽ sử dụng báo hiệu in-band(DTMF, 1VF,…). Do đó, quá trình thiết lập luồng RTP sẽ không chờ khi nhận đượcbản tin ACM mà sẽ thực hiện ngay sau khi “quay số” xong trên đường thuê bao. Dođó, nên ta sẽ nghe thấy có hai tiếng báo hiệu từ tổng đài. Thứ nhất, đó là tiếng tút ngắnvà nhanh báo rằng đang thực hiện định tuyến cuộc gọi. Và thứ hai, đó là tiếng tút dàibáo hiệu đang rung chuông thuê bao PSTN được phát từ tổng đài của thuê bao bị gọitrên đường trung kế. 85
  • 95. KẾT LUẬN Qua việc nghiên cứu về mạng VoIP, em nhận thấy được cơ hội và hướng pháttriển của nó trong tương lai. Việc phát triển dựa trên công nghệ VoIP không chỉ mangmột tính chất kinh tế, xã hội to lớn mà còn là một cơ hội rất lớn để Việt Nam có thể cómột sản phầm mang tính chiến lược và hoàn toàn khả thi nếu được đầu tư đúng hướng.Các giao thức VoIP được đề cập tới trong bài Luận văn tốt nghiệp là hết sức cơ bảnnhưng khá đầy đủ và toàn diện. Bài luận đã đi sâu tìm hiểu những vấn đề hết sức cơbản và mở rộng với nhiều góc cách và cách nhìn khác nhau của người xây dựng mạng.Sau khi hoàn thành nội dung bài luận này, em đã học hỏi được rất nhiều và đã chắp nốikhá tốt các kiến thức được học trên lớp về mạng viễn thông, về các giao thức cơ bản.Nó giúp em phát triển phương pháp luận, cách đặt vấn đè và giải quyết vấn đề. Do hạn chế về thời gian, khuôn khổ của bài luận cũng như kinh nghiệm thực tiễncủa em chưa nhiều nên không tránh khỏi những sai sót và những nhầm lẫn. Nên sựđóng góp của thầy cô cùng các bạn không chỉ giúp bài luận của em có chất lượng caohơn mà còn trang bị cho em một kiến thức vững vàng hơn trong nghiên cứu và côngtác sau này. Em xin chân thành cảm ơn! 86
  • 96. TÀI LIỆU THAM KHẢO[ 1 ] Alan B.Johnson. SIP Understanding The Session Initiation Protocol. Artech House[ 2 ] Jonathan Davidson, James Peters, Manoj Bhatia, Satish Kalidindi, Sudipto Mukherjee. Voice over IP Fundamentals, 2nd Edition. Cisco Press[ 3 ] Henry Sinnreich, Alan B. Johnston. Wiley Internet Communications Using SIP Delivering VoIP and Multimedia Services with Session Initiation Protocol[ 4 ] Morgan Kaufmann. Network Routing Algorithms Protocols and Architectures[ 5 ] RFC 3261. SIP - Session Initiation Protocol[ 6 ] RFC 3372.Session Initiation Protocol for Telephone[ 7 ] RFC 3550. RTP: A Transport Protocol for Real-Time Applications.[ 8 ] RFC 3666. Session Initiation Protocol (SIP) Public Switched Telephone Network (PSTN) Call Flows[ 9 ] RFC 3959. The Early Session Disposition Type for SIP[ 10 ] RFC 3960. Early Media and Ringing Tone Generation in SIP[ 11 ] RFC 4166. Telephony Signalling Transport over Stream Control Transmission Protocol (SCTP) Applicability Statement[ 12 ] RFC 4960. SCTP transport SIP 87

×