1. Trang chủ
  2. » Giáo Dục - Đào Tạo

ĐỀ TÀI TÌM HIỂU CÔNG NGHỆ VOIP XÂY DỰNG ỨNG DỤNG TRUYỀN THANH QUA MẠNG LAN

85 47 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 85
Dung lượng 2,43 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Giao thức H.323 .1 Đặc điểm Bộ giao thức H323 cho phép những thiết bị kết nối khác nhau có thể liên kết vớinhau.H323 được phổ biến bởi tổ chức ITU.Giao thức này ban đầu được phát triển c

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CÔNG NGHỆ THÔNG TIN

Tel (84-511) 736 949, Fax (84-511) 842 771Website: itf.ud.edu.vn, E-mail: cntt@edu.ud.vn

LUẬN VĂN TỐT NGHIỆP KỸ SƯ

NGÀNH CÔNG NGHỆ THÔNG TIN

MÃ NGÀNH : 05115

ĐỀ TÀI : TÌM HIỂU CÔNG NGHỆ VOIP XÂY DỰNG ỨNG DỤNG TRUYỀN THANH QUA MẠNG LAN

Mã số : 06T4 – 042 Ngày bảo vệ : 15 - 16/6/2011

SINH VIÊN : TRẦN QUANG QUÝ LỚP : 06T4

ĐÀ NẴNG, 06/2011

Trang 2

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Trang 3

Tôi xin chân thành cảm ơn trường Đại học Bách Khoa - Đại học Đà Nẵng nóichung và khoa Công nghệ thông tin nói riêng, cảm ơn các thầy cô giáo trong khoaCông nghệ Thông tin đã tận tình giảng dạy chỉ bảo cho tôi cũng như tất cả nhưng sinhviên khác trong suốt khóa học Thầy cô đã tạo điều kiện tối đa cho tôi cũng như cácsinh viên khác có thể học tập tốt và nâng cao tầm hiểu biết của mình Đặc biệt khoaCông nghệ Thông tin đã tạo điều kiện để chúng tôi được thực hiện luận văn tốtnghiệp của mình một cách trọn vẹn

Xin chân thành cảm ơn giao viên Thạc sĩ Mai Văn Hà đã tận tình hướng dẫn tôitrong suốt thời gian thực hiện đề tài, tạo điều kiện để tôi hoàn thành đề tài của mìnhvới kết quả tốt nhất

Xin cảm ơn gia đình và bạn bè cũng đã cho tôi chỗ dựa về mặt tinh thần trong suốtchặng đượng học tập cho đến ngày hôm nay

Tôi đã cố gắng hết sức mình để thực hiện đề tài này Mặc dù vậy cũng khó tránhkhỏi những sai sót Rất mong được thầy cô và các bạn xem xét và góp ý

Sinh viên : Trần Quang Quý

Lớp: 06T4

Trang 4

Tôi xin cam đoan :

1 Những nội dung trong luận văn này là do tôi thực hiện dưới sự hướng dẫn trực tiếp của Thạc sĩ Mai Văn Hà

2 Mọi tham khảo dùng trong luận văn đều được trích dẫn rõ ràng tên tác giả, tên công trình, thời gian, địa điểm công bố.

3 Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, tôi xin chịu hoàn toàn trách nhiệm.

Sinh viên, TRẦN QUANG QUÝ

Trang 5

MỞ ĐẦU 3

I Ý TƯỞNG 3

II BỐI CẢNH HIỆN TẠI 3

III MỤC ĐÍCH VÀ NHIỆM VỤ 4

IV PHƯƠNG PHÁP TRIỂN KHAI 4

CƠ SỞ LÝ THUYẾT 6

I CÔNG NGHỆ VOIP 6

I.1 Tổng quan về VoIP 6

I.2 Phương thức hoạt động của VoIP 7

I.3 Các giao thức trong VoIP 8

I.3.1 Giao thức H.323 8

I.3.2 Giao thức SIP 11

I.4 Các dạng mô hình VoIP 15

I.4.1 Máy điện thoại với máy điện thoại 16

I.4.2 Máy điện thoại với máy tính 17

I.4.3 Máy tính với máy tính 18

II KHẢO SÁT CÁC GIAO THỨC TRUYỀN THÔNG 19

II.1 Bộ giao thức TCP/IP 19

II.1.1 Khái quát về bộ giao thức TCP/IP 19

II.1.2 Ưu thế 20

II.1.3 Liên hệ TCP/IP với OSI 20

II.1.4 Các giao thức trong bộ giao thức TCP/IP 21

II.2 Giao thức IP 24

II.2.1 Khái quát về giao thức IP 24

II.2.2 Gói tin trong giao thức IP 26

II.2.3 Các giao thức trong mạng IP 29

II.2.4 Các bước hoạt động của giao thức IP 30

II.3 Giao thức điều khiển truyền dữ liệu TCP 31

II.3.1 Khái quát 31

II.3.2 Các bước thực hiện để thiết lập một liên kết TCP/IP 31

II.3.3 Một số hàm thông dụng trong giao thức TCP 32

II.3.4 Segment trong giao thức TCP 33

II.4 Giao thức UDP 35

II.4.1 Khái quát 35

II.4.2 Cổng 35

Trang 6

II.4.3 Cấu trúc gói trong giao thức UDP 36

III CÁC PHƯƠNG PHÁP MÃ HOÁ ÂM THANH 38

III.1 Tín hiệu tiếng nói con người 38

III.1.1 Quá trình phát âm của con người 38

III.2 Các phương pháp mã hoá 40

III.2.1 Khái quát 40

III.2.2 Mã hoá dạng sóng 41

III.2.3 Mã hoá dự đoán tuyến tính LPC 42

III.2.4 Mã hoá hỗn hợp 42

III.3 Các phương pháp mã hóa vùng thời gian 43

III.3.1 Phương pháp điều biến xung mã PCM 44

III.3.2 Phương pháp điều biến xung mã vi sai 48

III.3.3 Phương pháp diều biến xung mã vi sai thích ứng ADPCM 50

III.4 Một số chuẩn nén âm thanh 52

III.4.1 Chuẩn nén G711 52

III.4.2 Chuẩn nén G723 54

PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 57

I NGHIÊN CỨU SƠ BỘ 57

II PHÂN TÍCH YÊU CẦU 58

III THIẾT KẾ HỆ THỐNG 59

III.1 Thiết kế form chính (Form hiển thị danh sách máy online) 59

III.2 Thiết kế form gọi 60

III.3 Thiết kế form thông báo có cuộc gọi 60

IV THỰC HIỆN TRIỂN KHAI HỆ THỐNG 61

IV.1 Phạm vi ứng dụng của hệ thống 61

IV.2 Biểu đồ usercase 61

IV.3 Biểu đồ tuần tự 62

IV.3.1 Gởi gói tin broadcast 62

IV.3.2 Gọi và truyền thoại 62

XÂY DỰNG CHƯƠNG TRÌNH 63

I MÔI TRƯỜNG DIRECTX SDK 63

I.1 Lớp Foundation 64

I.1.1 Direct Draw 65

I.1.2 Direct Sound 65

Trang 7

II.1.1 Sơ đồ hoạt động 70

II.1.2 Kết quả 71

II.2 Module gọi và truyền thoại 72

II.2.1 Sơ đồ hoạt động 72

II.2.2 Kết quả 72

TỔNG KẾT 73

I KẾT QUẢ ĐẠT ĐƯỢC 73

II CHƯA ĐẠT ĐƯỢC 73

III HƯỚNG PHÁT TRIỂN ĐỀ TÀI 73

Trang 8

Hình 1 Mô hình VoIP 6

Hình 2 Cấu trúc Stack của giao thức H.323 10

Hình 3 Mô hình hoạt động của giao thức SIP (a) 11

Hình 4 Mô hình hoạt động của giao thức SIP (b) 12

Hình 5 Mô hình VoIP Phone to phone 16

Hình 6 Mô hình VoIP Phone to PC 17

Hình 7 Mô hình VoIP PC to PC 18

Hình 8 Cấu trúc các tầng trong OSI và TCP/IP 20

Hình 9 Các giao thức trong bộ giao thức TCP/IP 21

Hình 10 Cấu trúc gói tin trong giao thức IP 26

Hình 11 Cấu trúc trường Type of service trong gói tin Ipv4 26

Hình 12 Các giá trị tương ứng của trường Precedence trong trường Type of serveice 27

Hình 13 Cấu trúc segment trong giao thức TCP 33

Hình 14 Cấu trúc gói tin trong giao thức UDP 36

Hình 15 Dạng phổ của tín hiệu âm thanh 39

Hình 16 Sơ đồ bộ mã hóa tiếng nói 40

Hình 17 Các thành phần trong bộ mã hóa PCM 44

Hình 18 Ba phương thức lấy mẫu của bộ mã hóa PCM 46

Hình 19 Lượng tử hóa và mã hóa trong PCM 47

Hình 20 Sơ đồ mã hóa và giải mã của phương pháp DPCM 48

Hình 21 Sơ đồ khối đơn giản của bộ mã hóa và giải mã ADPCM 50

Hình 22 Sơ đồ giải thuật mã hoá nén IMA ADPCM 51

Hình 23 Luật a và luật µ trong G711 53

Hình 24 Cơ chế mã hóa của chuẩn G723 55

Hình 25 Cơ chế giải mã của chuẩn G723 56

Hình 26 Mô tả sơ bộ chức năng bắt các máy trong mạng LAN 57

Hình 27 Mô tả chức năng gọi thoại 58

Hình 28 Form hiển thị danh sách máy trong mạng LAN 59

Hình 29 Form gọi và kết thúc cuộc gọi 60

Hình 30 Form thông báo có cuộc gọi 60

Trang 9

Hình 37 Sơ đồ hoạt động module gọi và truyền thoại 72

Trang 10

MỞ ĐẦU

.I Ý TƯỞNG

Đối tượng tác động để đi tới ý tưởng là việc tổ chức các cuộc họp của các công tydoanh nghiệp, đặc biệt là các công ty tin học Vấn đề đặt ra làm thế nào có thể rútngắn thời gian chuẩn bị cho một cuộc họp Làm thế nào để một thành viên trong cuộchọp sẽ không phải rời xa bàn làm việc của mình khi có một cuộc họp khẩn cấp

Giải pháp đưa ra là cuộc họp sẽ phải được tổ chức theo kiểu trực tuyến Nghĩa làtoàn bộ việc giao tiếp trong cuộc họp sẽ được thực hiện thông qua một hệ thốngmạng Việc quản lý cuộc họp sẽ được quản lý với một server duy nhất Trong cuộchọp một thành viên sẽ đối thoại với các thành viên khác dưới hình thức một người nóitất cả cùng nghe Thành viên sẽ nắm bắt được tất cả các thông tin từ những thànhviên khác như đang ngồi đối diện với họ trong phòng họp mà thực chất là họ đangngồi trên bàn làm việc của mình Điều này cần đến một hệ thống truyền tải thoại màthành viên phát ra tới tất cả các thành viên khác Đây là phần chính nhất trong hệthống Và công nghệ được lựa chọn sẽ là VoIP Ngoài ra các thông tin khác như cáctài liệu của cuộc họp, cũng sẽ được cung cấp tới tất cả các thành viên qua một hệthống truyền tải files Hay hình ảnh của từng thành viên cũng được truyền theophương thức truyền tải dữ liệu hình ảnh

Có không ít lý do để lựa chọn giải pháp này Ví dụ khi công ty được đặt trong mộttòa nhà cao tầng Nhân viên không phải vất vã đến phòng họp, việc này hơn nữa cũngchiếm mất khá nhiều thời gian Hay một trường hợp khác một nhân viên đang có mộtviệc khá cấp thiết phải thực hiện và không thể rời xa máy tính của mình Khi đó anh

ta có thể vừa làm việc vừa có thể nắm bắt được thông tin trong cuộc họp …

.II BỐI CẢNH HIỆN TẠI

Trong bối cảnh hiện tại thì công nghệ VoIP đã thực sự rất phổ biến và cho thấy thế

Trang 11

mục tiêu là xây dựng một hệ thống tổ chức cuộc họp trực tuyến như ý tưởng đã đưa

ra với thời lượng của luận văn tốt nghiệp Tôi đã quyết định trong đề tài luận văn tốtnghiệp này, tôi sẽ bắt đầu tìm hiểu về công nghệ VoIP, các giải pháp truyền nhận thoạitrên hệ thống mạng Xây dựng một chương trình Demo thể hiện phương thức truyềntải thoại qua mạng, phương pháp nén mã hóa âm thanh Đề tài sẽ là nền tảng cho tôiphát triển ý tưởng của mình trong thời gian tới

 Với mục đích đó, tôi đã xác định hai nhiệm vụ chính phải thực hiện là:

 Tìm hiểu lý thuyết về công nghệ VoIP

 Xây dựng thành công ứng dụng truyền thanh qua mạng LAN với ngôn ngữchọn lựa là C#.NET

.IV PHƯƠNG PHÁP TRIỂN KHAI

Phương pháp triển khai đề tài là : Triển khai từng bước từ tìm hiểu lý thuyết đếnxây dựng ứng dụng Tìm hiểu kỹ về VoIP sau đó tìm hiểu về lập trình ứng dụng mạng

và cuối cùng là bắt tay và giai đoạn phân tích thiết kế và xây dựng ứng dụng

Trang 12

Nội dung báo cáo sẽ bao gồm các chương sau:

Chương 1 Cơ sở lý thuyết:

Trình bày về công nghệ VoIP, kiến thức về lập trình ứng dụng mạng mà cụ thể

là lập trình Socket Tình hình thực tiễn ứng dụng công nghệ VoIP

Chương 2 Phân tích và thiết kế hệ thống

Phân tích và thiết kế hệ thống thông tin

Chương 3 Xây dựng chương trình Phone IP

Trình bày về chương trình, kết quả demo

Chương 4 Tổng kết

Trình bày kết quả đã đạt được, và chưa đạt được , hướng phát triển

Trang 13

CƠ SỞ LÝ THUYẾT

.I CÔNG NGHỆ VOIP

.I.1 Tổng quan về VoIP

VoIP (viết tắt của Voice over Internet Protocol, nghĩa là Truyền giọng nói trên

giao thức IP) là công nghệ truyền tiếng nói của con người qua mạng thông tin sử dụng

bộ giao thức TCP/IP Nó sử dụng các gói dữ liệu IP (trên mạng LAN, WAN, Internet)với thông tin được truyền tải là mã hoá của âm thanh

Hình 1 Mô hình VoIP

Công nghệ này bản chất là dựa trên chuyển mạch gói, nhằm thay thế công nghệtruyền thoại cũ dùng chuyển mạch kênh Nó nén nhiều kênh thoại trên một đườngtruyền tín hiệu, và những tín hiệu này được truyền qua mạng Internet, vì thế có thểgiảm giá thành

Để thực hiện việc này, điện thoại IP, thường được tích hợp sẵn các nghi thức báohiệu chuẩn như SIP hay H.323, kết nối tới một tổng đài IP (IP PBX) của doanh nghiệphay của nhà cung cấp dịch vụ Điện thoại IP có thể là điện thoại thông thường (chỉkhác là thay vì nối với mạng điện thoại qua đường dây giao tiếp RJ11 thì điện thoại

IP nối trực tiếp vào mạng LAN qua cáp Ethernet, giao tiếp RJ45) hoặc phần mềm

thoại (soft-phone) cài trên máy tính.

Các dịch vụ như gọi 171 (VNPT), 177 (SPT), 178 (Viettel), 175 (VISHIPEL) ở

Trang 14

những nhược điểm của nó Đó là chất lượng âm thanh chưa được đảm bảo, vẫn còntình trạng trễ tiếng Một số công ty cung cấp VoIP tại Việt Nam đã cố gắng cung cấpcho khách hàng chất lượng thoại VoIP ngày càng tốt hơn.

Các giao thức dùng trong VoIP là SIP, MGCP, H323 Giao thức H323 không chỉđược dùng trong truyền tiếng nói mà còn được dùng để truyền video trên nền mạng IP(giải pháp video conference)

.I.2 Phương thức hoạt động của VoIP

VoIP cho phép tạo cuộc gọi đường dài qua mạng IP có sẵn thay vì phải được truyềnqua mạng PSTN(Public Switched Telephone Network) Ngày nay nhiều công ty đãthực hiện giải pháp VoIP của họ để giảm chi phí cho những cuộc gọi đường dài giữanhiều chi nhánh xa nhau

Cách đây nhiều năm chúng ta đã khám phá ra cách gửi tín hiệu đến một máy đích ở

xa bằng tín hiệu số bằng cách: trước khi gửi,chúng ta sẽ số hóa tín hiệu bằngADC(Analog to Digital Converter-Thiết bị chuyển đổi tín hiệu tuần tự sang tín hiệusố)sau đó truyền đi và tại đầu nhận sẽ chuyển đổi ngược lại với DAC(Digital toAnalog Converter-Thiết bị chuyển đổi tín hiệu số sang tín hiệu tuần tự) để sử dụng.VoIP cũng làm việc giống như vậy,số hóa âm thanh thành các gói dữ liệu,gửi dữliệu đi và chuyển đổi chúng lại thành dạng âm thanh tại đầu nhận

Khi nói vào ống nghe hay microphone,giọng nói sẽ tạo ra tín hiệu điện từ,đó là tínhiệu analog.Tín hiệu analog sẽ được chuyển đổi sang tín hiệu số nhờ vào một số thuậttoán đặc biệt để chuyển đổi.Những tín hiệu khác nhau sẽ có cách chuyển đổi khácnhau như VoIP phone hay softphone,nếu dùng điện thoại analog thông thường thì cầnmột TA(Telephone Adapter),sau đó giọng nói được số hóa sẽ được đóng thành gói tin

và được gửi qua mạng IP

Định dạng số có thể được điều khiển tốt hơn:chúng ta có thể nén,địnhtuyến,chuyển đổi nó sang định dạng mới và hơn nữa tín hiệu số thì ít nhiễu hơn tínhiệu analog

Trang 15

.I.3 Các giao thức trong VoIP

Những giao thức VoIP có thể được phân loại tùy theo vai trò của chúng trong suốtquá trình chuyển giao thông điệp H323 và SIP là những giao thức báo hiệu, các giaothức này dùng để thiết lập,ngắt và thay đổi cuộc gọi RTP và RTCP cung cấp chứcnăng mạng vận chuyển end-to-end cho những ứng dụng truyền dữ liệu mà yêu cầuthời gian thực (real-time) như là âm thanh và video Những chức năng đó bao gồmnhận diện loại dữ liệu, số trình tự, tham số thời gian và giám sát tiến trình gởi.TRIP,SAP,STUN, TURN… bao gồm một nhóm các giao thức hỗ trợ có liên quan đếnVoIP Sau cùng, bởi vì VoIP gían tiếp dựa vào tầng vận chuyển bên dưới để di chuyển

dữ liệu nên đòi hỏi nhiều giao thức như là TCP/IP, DNS, DHCP, SNMP, RSVP vàTFTP

.I.3.1 Giao thức H.323

.1 Đặc điểm

Bộ giao thức H323 cho phép những thiết bị kết nối khác nhau có thể liên kết vớinhau.H323 được phổ biến bởi tổ chức ITU.Giao thức này ban đầu được phát triển chonhững ứng dụng đa phương tiện,các thực thể của H323 cung cấp những tiến trình liênquan đến vấn đề đồng bộ như thoại,video và kết nối dữ liệu.Hỗ trợ cho thoại là chủyếu,hỗ trợ cho video,kết nối dữ liệu chỉ là phần mở rộng của H323

Đặc điểm kỹ thuật của H323 định nghĩa bốn thực thể H323 khác nhau như là cácđơn vị chức năng của mạng H323 hoàn chỉnh, những thành phần này của hệ thốngH323 bao gồm thiết bị đầu cuối, gateway, gatekeeper và các đơn vị điều khiển đađiểm(MCUs)

Thiết bị đầu cuối(điện thoại,softphones,IVRs,thư thoại,máy quay phim,v.v…) lànhững thiết bị điển hình tác động qua lại với người dùng cuối.Phần mềm MSNetmeeting là một ví dụ của thiết bị đầu cuối.Các thiết bị đầu cuối chỉ cung cấp thoạihoặc đa phương tiện như là video và sự cộng tác ứng dụng thời gian thực

Gateways giải quyết điều khiển tín hiệu và truyền dẫn phương tiện, và là thànhphần mở rộng Điển hình của gateway là cung cấp giao diện cho những mạng khácnhau như là ISDN,PSTN hoặc những hệ thống H323 khác Bạn có thể nghĩ chức năngcủa H323 như là cung cấp một “bộ dịch”

Ví dụ như là một gateway H323 sẽ điều khiển sự đàm thoại của H323 với SIP hoặcH323 với ISUP(ISDN User Part) chỉ rõ tính chất thủ tục tín hiệu xen kẽ cho việc điều

Trang 16

khiển cuộc gọi Nghĩ một cách khác thì một gateway cung cấp một giao diện giữamạng chuyển gói(ví dụ như VoIP) và mạng chuyển mạch(ví dụ như PSTN) Nếugatekeeper tồn tại, gateway VoIP đăng ký với gatekeeper đó và gatekeeper sẽ tìm ragateway tốt nhất cho phiên giao dịch chi tiết.

Gatekeeper cũng là phân mở rộng của H323, điều khiển việc giải quyết địa chỉ vàcho vào mạng H323 Chức năng quan trọng nhất của nó là biên dịch địa chỉ giữa địachỉ ký danh tượng trưng và địa chỉ IP

Ví dụ,với sự có mặt của gatekeeper nó có khả năng gọi tới địa chỉ có tên là “Tom”thay vì phải gọi tới địa chỉ IP 192.168.10.10 Gatekeeper cũng quản lý các thiết bị đầucuối truy cập vào các thiết bị,tài nguyên mạng, và mở rộng hơn là có thể cung cấp cácdịch vụ phụ Chúng cũng giám sát việc sử dụng dịch vụ và cung cấp băng thông cógiới hạn

Một gatekeeper thì không đòi hỏi một hệ thống H323 Tuy nhiên nếu có sự hiệndiện của gatekeeper, các thiết bị đầu cuối muốn sử dụng được thì cần phải có sự phục

vụ của gatekeeper RAS định nghĩa khái niệm này là sự biên dịch địa chỉ, điều khiển

sự đi vào, điều khiển băng thông, sự quản trị miền Các chức năng của gatekeeper vàgateway thường được hiện diện trên những thiết bị vật lý đơn giản

MCUs hỗ trợ hội nghị nhiều bên giữa ba hay nhiều thiết bị đầu cuối Chuẩn H323cho phép nhiều kịch bản đàm thoại đặc biệt, hoặc tập trung hay phân quyền

Base-end servers (BES) là một chức năng bổ sung quan trọng trong hạ tầng H323.BES có thể cung cấp những dịch vụ cho việc chứng thực người sử dụng, sự ủy quyềndịch vụ, tài chính, nạp điện và hóa đơn, và các dịch vụ khác Trong một mạng đơngiản thì gatekeeper và gateway cung cấp những dịch vụ như thế

.2 Cấu trúc Stack

Audio,video và các packet registration sử dụng giao thức không có độ tin cậyUDP(User Datagram Protocol) trong khi dữ liệu và các gói tin ứng dụng thì sử dụng

Trang 17

Hình 2 Cấu trúc Stack của giao thức H.323 3 Những giao thức có liên hệ với H.323

H323 có đặc điểm kỹ thuật giống như một chiếc dù chứa đựng một số lượng lớn bộmáy chính trị có tác động qua lại với nhau bằng nhiều cách thức khác nhau dựa vào

bộ dạng, sự vắng mặt, mối quan hệ mô hình của những thực thể tham gia và loạisession (ví dụ như là audio và video) Có nhiều giao thức con bên trong đặc điểm củagiao thức H323 Để mà có thể hiểu được toàn bộ những luồng thông điệp bên trongmột giao tác VoIP của giao thức H323, bản thân chúng ta sẽ tự quan tâm đến nhữnggiao thức chung nhất có liên quan đến công nghệ VoIP Hình 5.2 sẽ cho thấy nhữnggiao thức thích hợp và mối quan hệ của chúng

H.225/Q.931 định nghĩa tín hiệu cho việc thiết lập và ngắt cuộc gọi, bao gồm địa

chỉ IP nguồn và địa chỉ IP đích, cổng, mã vùng, và thông tin cổng của giao thức H245

H.225.0/RAS chỉ rõ thông điệp mà mô tả tín hiệu, và thông tin dòng media.

H.245 chỉ rõ thông điệp và thông tin kênh logic cho dòng phương tiện

Real Time Protocol (RTP) mô tả vận chuyển end-to-end của dữ liệu thời gian

thực

Real Time Control Protocol (RTCP) mô tả việc giám sát end-to-end của việc

chuyển dữ liệu, chất lượng dịch vụ của thông tin cung cấp như là jitter và sự thất lạctrung bình của packet

.I.3.2 Giao thức SIP

Trước đây khi đề cập đến VoIP, 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 đaphương tiện qua các hệ thống dựa trên mạng chuyển mạch gói, tập giao thức H.323bao gồm rất nhiều giao thức con bên trong nó như H.245, H.225, Q.931 hoạt động

Trang 18

dựa trên H.323 là rất chặt chẽ và phức tạp Nhưng những năm trở lại đây thì giaothức SIP lại chiếm ưu thế và dần dần thay thế hẳn H.323, tôi mở topic này với hi vọngmọi người sẽ cùng bàn luận để có thể hiểu rõ ràng hơn về giao thức này, vì VoIP làmột trong những dịch vụ sẽ rất phát triển trong tương lai.

.1 SIP và các thành phần trong SIP

SIP (viết tắt của 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ươngtiện Các phiên multimedia bao gồm thoại Internet, hội nghị, và các ứng dụng tương

tự có liên quan đến các phương tiện truyền đạt (media) như âm thanh, hình ảnh, và dữliệu SIP sử dụng các bản tin mời (invite message) để 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ảng

bá (multicast) tương ứng các cuộc gọi điểm tới điểm và cuộc gọi đa điểm

Nói chung SIP gồm 2 thành phần lớn là SIP client (là thiết bị hỗ trợ giao thức SIPnhư SIP phone), và SIP server (là thiết bị trong mạng xử lý các bản tin SIP) TrongSIP server có các thành phần quan trọng như: Proxy server, Redirect server, Locationserver, Registrar server

Hình 3 Mô hình hoạt động của giao thức SIP (a).

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

Trang 19

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

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

Hình 4 Mô hình hoạt động của giao thức SIP (b).

.2 Các dạng message trong giao thức SIP

Dưới đây là các dạng tin nhắn được sử dụng trong giao thức SIP

INVITE : là tin nhắn được dùng khi bắt đầu thiết lập cuộc gọi Gói tin này được

gửi tới đầu cuối khác mời tham gia cuộc gọi

ACK : là tin phản hồi từ đầu cuối được mời khẳng định máy trạm đã nhận được

tin nhắn mời INVITE

BYE : kết thúc cuộc gọi

CANCEL : hủy yêu cầu nằm trong hàng đợi

REGISTER : đầu cuối SIP sử dụng bản tin này để đăng ký với máy chủ đăng ký OPTION : sử dụng để xác định năng lực của máy chủ

INFO : sử dụng để tải các thông tin như âm báo DTMF

Giao thức SIP có nhiều điểm trùng hợp với giao thức HTTP Các bản tin trả lời cácbản tin SIP nêu trên gồm có :

1xx - Các bản tin chung

2xx - Thành công

3xx - Chuyển địa chỉ

Trang 20

4xx - Yêu cầu không được đáp ứng

RTSP (Real Time Streaming Protocol) : Giao thức tạo luồng thời gian thực

SAP (Session Advertisement Protocol) : Giao thức thông báo trong phiên kết nốiSDP (Session Description Protocol) : Giao thức mô tả phiên kết nối đa phương tiệnMIME (Multipurpose Internet Mail Extension - Mở rộng thư tín Internet đa mụcđích) : Giao thức thư điện tử

HTTP (Hypertext Transfer Protocol) : Giao thức truyền siêu văn bản

COPS (Common Open Policy Service) : Dịch vụ chính sách mở chung

OSP (Open Settlement Protocol) : Giao thức thỏa thuận mở

Đơn giản và có khả năng mở rộng

SIP có rất ít bản tin, không có các chức năng thừa nhưng SIP có thể sử dụng để

Trang 21

máy chủ hoàn toàn không ảnh hưởng đến các máy chủ đã có Chính vì thế hệ thốngchuyển mạch SIP có thể dễ dàng nâng cấp.

Hỗ trợ tối đa tính di động của đầu cuối

Do có máy chủ ủy quyền, máy chủ đăng ký và máy chủ chuyển đổi địa chỉ hệthống luôn nắm được địa điểm chính xác của thuê bao Thí dụ thuê bao với địa chỉptit@vnpt.com.vn có thể nhận được cuộc gọi thoại hay thông điệp ở bất cứ địa điểmnào qua bất cứ đầu cuối nào như máy tính để bàn, máy xách tay, điện thoại SIP… VớiSIP rất nhiều dịch vụ di động mới được hỗ trợ

Dễ dàng tạo tính năng mới cho dịch vụ và dịch vụ mới

Là giao thức khởi tạo phiên trong mạng chuyển mạch gói SIP cho phép tạo ranhững tính năng mới hay dịch vụ mới một cách nhanh chóng Ngôn ngữ xử lý cuộcgọi (Call Processing Language) và Giao diện cổng kết nối chung (Common GatewayInterface) là một số công cụ để thực hiện điều này SIP hỗ trợ các dịch vụ thoại nhưchờ cuộc gọi, chuyển tiếp cuộc gọi, khóa cuộc gọi… (call waiting, call forwarding,call blocking…), hỗ trợ thông điệp thống nhất…

.I.4 Các dạng mô hình VoIP

Truyền thông thoại qua môi trường Internet chứ không qua môi trường PSTN nhưthông thường đã được Vocaltec hiện thực hoá lần đầu tiên vào tháng 2 năm 1995 khiVocaltec đưa ra phần mềm điện thoại internet

Phần mềm này được thiết kế cho nền máy tính cá nhân PC 486/33 MHz (hoặc caohơn) có trang bị card âm thanh, loa, micro thoại và modem, phần mềm thực hiện néntín hiệu thoại và chuyển đổi thành các gói tin IP để truyền dẫn qua môi trườngInternet

Tuy nhiên, việc truyền thoại qua Internet giữa hai máy PC này chỉ thực hiện đượckhi cùng đang sử dụng phần mềm thoại Internet Sau đó một thời gian ngắn, điệnthoại Internet đã phát triển nhanh chóng Nhiều nhà phát triển phần mềm đã đưa raphần mềm điện thoại PC, nhưng quan trọng hơn là các Gateway Server đã được sửdụng đóng vai trò là giao diện giữa Internet và PSTN

Với trang bị các card xử lý âm thanh, các Gateway Server này cho phép kháchhàng có thể truyền thông thông qua các máy điện thoại thông thường.Ban đầu, chỉ với

sự mới lạ, điện thoại Internet đã cuốn hút được ngày càng nhiều khách hàng bởi sự

Trang 22

tiết kiệm rất hiệu quả giá thành cuộc gọi do nó đem lại so với cuộc gọi thoại truyềnthống Khách hàng có thể tránh được các chi phí cho thoại đường dài bằng cách thựchiện cuộc gọi qua mạng Internet với chi phí tương ứng với chi phí truy nhập Internet Tất nhiên, so với mạng PSTN thì điện thoại Internet còn phải giải quyết các vấn đềnhư độ tin cậy, chất lượng dịch vụ thoại, đó là những yêu cầu mà khách hàng mongđợi giống như các cuộc gọi trong PSTN Tuy nhiên, tại thời điểm hiện nay, vấn đề chủyếu vẫn là giới hạn về độ rộng băng tần dẫn đến mất gói Trong truyền thông thoại,việc mất mát gói tin sẽ dẫn đến những ngắt quãng, khoảng lặng trong cuộc đàm thoại,dẫn đến sự cắt đoạn cuộc đàm thoại, đó là điều không mong muốn đối với khách hàng

và khó có thể chấp nhận trong thông tin thương mại

Các cuộc gọi thông qua mạng PSTN nội hạt đến Gateway Server gần nhất, tại đó,tín hiệu thoại được số hoá (nếu chưa số hoá), nén vào các gói tin IP và chuyển lênInternet để truyền tải đến Gateway ở phía đầu cuối thu Với việc hỗ trợ cho cả cáccuộc thoại PC-to-telephone, telephone-to-PC và telephone-to-telephone, điện thoạiInternet đã chiếm được vai trò quan trọng trong hướng phát triển tiến tới tích hợp cácmạng thoại và mạng dữ liệu Như vậy, về nguyên tắc các dịch vụ thoại qua giao thức

IP bao gồm một số loại sau đây :

Máy điện thoại tới máy điện thoại (Phone to Phone)

Máy tính tới máy điện thoại (PC to Phone)

Máy tính tới máy tính (PC to PC)

.I.4.1 Máy điện thoại với máy điện thoại

Trong loại hình dịch vụ này, bên chủ gọi và bên bị gọi đều sử dụng điện thoạithông thường Gateway ở mỗi phía làm nhiệm vụ chuyển tín hiệu thoại PCM 64 Kbpsthành các gói tin IP và ngược lại Các gói tin này được gửi từ bên nói tới bên nghetrong một mạng gói hoạt động dựa trên giao thức IP

Trang 23

Hình 5 Mô hình VoIP Phone to phone

Trang 24

.I.4.2 Máy điện thoại với máy tính

Trong loại hình dịch vụ này, người gọi sử dụng một máy tính đa phương tiện đểthực hiện một cuộc gọi tới một thuê bao cố định PSTN hoặc thuê bao di động thôngthường Tín hiệu thoại từ phía người gọi thông qua máy tính được đóng gói vào cácgói tin IP truyền qua mạng IP tới Gateway Tại đó, các gói tin IP được chuyển đổithành tín hiệu 64 Kbps thông thường và chuyển tới tổng đài nội hạt của thuê bao bịgọi Sau đó, chuyển tới máy điện thoại của thuê bao bị gọi

Hình 6 Mô hình VoIP Phone to PC

Trang 25

.I.4.3 Máy tính với máy tính

Trong loại hình dịch vụ này, hai PC có thể được kết nối trực tiếp với nhau trongcùng một mạng IP hay giữa các mạng IP với nhau thông qua một mạng trung giankhác (như ISDN/PSTN) Trong các kết nối này, các PC đóng vai trò như các đầu cuốiVoIP Nó là một máy tính đa phương tiện gồm sound card, loa, micro và có phầnmềm phục vụ dịch vụ thoại Internet

Tín hiệu thoại từ phía người gọi thông thường qua máy tính đa phương tiện đượcđóng vào các gói IP và truyền qua mạng Hai đầu cuối có thể ở trong cùng một mạng

IP hoặc thuộc các mạng IP khác nhau Trong trường hựop thứ hai, các mạng IP có thểđược kết nối với nhau qua một mạng trung gian Mạng này có thể là ISDN, PSTN hayInternet

Hình 7 Mô hình VoIP PC to PC

Trang 26

.II KHẢO SÁT CÁC GIAO THỨC TRUYỀN THÔNG II.1 Bộ giao thức TCP/IP

.II.1.1 Khái quát về bộ giao thức TCP/IP

Bộ giao thức TCP/IP, ngắn gọn là TCP/IP (tiếng Anh: Internet protocol suite

hoặc IP suite hoặc TCP/IP protocol suite - bộ giao thức liên mạng), là một bộ các giao

thức truyền thông cài đặt chồng giao thức mà Internet và hầu hết các mạng máy tínhthương mại đang chạy trên đó Bộ giao thức này được đặt tên theo hai giao thức

chính của nó là TCP (Giao thức Điều khiển Giao vận) và IP (Giao thức Liên mạng).

Chúng cũng là hai giao thức đầu tiên được định nghĩa

Bộ giao thức TCP/IP bao gồm một tập hợp của một số giao thức, được phát triểnlần đầu tiên bởi Bộ Quốc phòng (DoD) Mỹ Sau đó, TCP đã trở thành một chuẩncông nghiệp được hỗ trợ bởi phần lớn các hệ điều hành thông dụng, bao gồm UNIX,DOS, Windows, Macintosh và Netware Phần này, chúng ta sẽ xem xét một cách tổngquan các dịch vụ cung cấp bởi TCP/IP

TCP/IP đầu tiên được phát triển cho mạng ARPNet (Advanced Research ProjectsAgency Network), một dự án của Bộ quốc phòng Mỹ ARPNet là tiền thân của mạngInternet hiện đại ngày nay và được thiết kế để cung cấp sự truyền thông phi tập trunghoá giữa các hệ thông máy tính khác nhau TCP/IP là một tập các giao thức xác địnhcác qui tắc cũng như định dạng cho việc truyền thông này

Như nhiều bộ giao thức khác, bộ giao thức TCP/IP có thể được coi là một tập hợpcác tầng, mỗi tầng giải quyết một tập các vấn đề có liên quan đến việc truyền dữ liệu,

và cung cấp cho các giao thức tầng cấp trên một dịch vụ được định nghĩa rõ ràng dựatrên việc sử dụng các dịch vụ của các tầng thấp hơn Về mặt lôgic, các tầng trên gầnvới người dùng hơn và làm việc với dữ liệu trừu tượng hơn, chúng dựa vào các giaothức tầng cấp dưới để biến đổi dữ liệu thành các dạng mà cuối cùng có thể đượctruyền đi một cách vật lý

Trang 27

Là một chuẩn đã được kiểm nghiệm, mang tính ổn định

Đã trở thành bộ giao thức sử dụng cho mạng Internet

.II.1.3 Liên hệ TCP/IP với OSI

Bộ giao thức TCP/IP xây dựng đựa trên mô hình mạng do DoD phát triển, được gọi là

mô hình DoD

Hình 8 Cấu trúc các tầng trong OSI và TCP/IP

Thay vì một mô hình gồm 7 lớp, mô hình DoD chỉ có 4 lớp Lớp Truy nhập mạng(Network Access) dùng để miêu tả khuôn thức vật lý của mạng cũng như các thông

Trang 28

điệp sẽ được định dạng như thế nào trong quá trình truyền dữ liệu Lớp Internet cónhiệm vụ chuyển phát các gói dữ liệu trong liên mạng và Lớp Giao vận (Transport) sẽthực hiện các công việc kiểm tra lỗi để đảm bảo sự chuyển phát tin cậy Tất cả cácchức năng mạng khác được thực hiện trong lớp ứng dụng (Application).

Các giao thức trong bộ giao thức TCP/IP sẽ tương xứng với một lớp cụ thể của môhình DoD và cũng có thể ánh xạ sang mô hình OSI Dưới đây chúng ta sẽ tóm tắt mỗigiao thức TCP/IP và chỉ rõ mối quan hệ của nó với các lớp trong cả hai mô hình DoD

và OSI

.II.1.4 Các giao thức trong bộ giao thức TCP/IP

Hình bên dưới cho ta thấy bao quát về các giao thức trong bộ giao thức TCP/IP

Hình 9 Các giao thức trong bộ giao thức TCP/IP

TCP/IP không hề có bất kỳ giao thức nào tương ứng với Lớp Truy nhập Mạng của

mô hình DoD Chức năng của các giao thức TCP/IP độc lập với kiến trúc mạng ở mứcthấp Dưới đây là tóm lược về chức năng cụ thể của các giao thức trong bộ giao thứcTCP/IP

Trang 29

.1 Các giao thức Lớp ứng dụng

FTP (File Transfer Protocol): Giao thức truyền tệp

FTP cung cấp một phương thức chung để truyền tệp trong một liên mạng Nó cóthể bao gồm các tính năng bảo mật tệp thông qua sử dụng một cặpusername/password để xác thực Nó có thể cho phép chuyển tệp giữa các hệ thốngmáy tính khác nhau

TFTP (Trivial File Transfer Protocol): Giao thức truyền tệp đơn giản

Tương tự như FTP, cho phép truyền tệp giữa một host và một máy chủ FTP (FTPserver) Tuy nhiên, giao thức này không bao gồm việc xác thực người sử dụng vàdùng UDP chứ không phải là TCP làm giao thức giao vận

HTTP (Hypertext Transport Protocol): Giao thức truyền tệp siêu văn bản

Các trình duyệt Web và máy chủ Web sử dụng giao thức này để trao đổi các tệp (ví

dụ các trang Web) qua mạng toàn cầu WWW hay intranet Chúng ta có thể coi HTTP

là giao thức yêu cầu và trả lời thông tin Nó thường sử dụng để yêu cầu trả gửi trả cáctài liệu Web Ngoài ra, HTTP cũng được sử dụng để làm giao thức truyền thông giữacác tác tử (agent) sử dụng các giao thức TCP/IP khác

SMTP (Simple Mail Transfer Protocol): Giao thức chuyển thư đơn giản

Đây là giao thức được sử dụng để định tuyến các thư điện tử trong một liên mạng.Các ứng dụng thư điện tử sẽ cung cấp giao diện để truyền thông với SMTP và máychủ thư điện tử

Các giao thức khác

Bộ giao thức TCP/IP còn có nhiều giao thức khác ở lớp ứng dụng để đáp ứng chomột số dịch vụ cụ thể khác Trong số những giao thức này có thể kể đến

Telnet: Giao thức điều khiển từ xa

NFS (Network File System): Hệ thống tệp tin máy chủ

Trang 30

.2 Các giao thức lớp Giao vận

TCP (Transmission Control Protocol): Giao thức kiểm soát truyền thông tin

Giao thức này cung cấp các dịch vụ hướng kết nối (connection-oriented) và thựchiện các công việc như kiểm soát thứ tự của các gói tin ,việc đánh địa chỉ các dịch vụcũng như các chức năng kiểm tra lỗi

UDP (User Data Protocol): Giao thức gói dữ liệu người dùng

Giao thức này cũng hoạt động ở lớp giao vận, giống như giao thức TCP Tuy nhiên,đây không phải là giao thức hướng kết nối và làm phát sinh ít phụ phí hơn TCP Do ítphụ phí hơn, nó truyền dữ liệu nhanh hơn, nhưng cũng ít tin cậy hơn

DNS (Domain Name System): Hệ thống tên miền

Đây là hệ thống được phân tán trong liên mạng để cung cấp việc phân giải tên/địachỉ Ví dụ, tên miền internet.vdc.com.vn sẽ được phân giải thành một địa chỉ cụ thể là203.162.1.181

IP (Internet Protocol): Giao thức Internet

Đây là giao thức chính trong bộ giao thức TCP/IP Đây là một giao thức phi kết nối(connectionless) có chức năng ra các quyết định trong việc định tuyến trong một liênmạng dựa vào các thông tin nó nhận được từ ARP Sử dụng địa chỉ IP để xác địnhmột mạng cụ thể trong một liên mạng, nó cũng kiểm soát các vấn đề liên quan tới địcchỉ IP khi thực hiện định tuyến

ICMP (Internet Control Message Protocol): Giao thức kiểm soát thông điệp

Trang 31

Là giao thức tìm lựa chọn tuyến đường trong phương pháp định tuyến trạng tháiliên kết Giao thức này hiệu quả hơn RIP trong việc cập nhật thông tin cho bảng địnhtuyến, đặc biệt trong các mạng có qui mô lớn.

ARP (Adress Resolution Protocol): Giao thức phân giải địa chỉ

Giao thức này cung cấp địa chỉ Internet hoàn chỉnh bằng cách kết hợp một địa chỉmạng (lôgíc) với một địa chỉ vật lý cụ thể Nó làm việc cùng với các giao thức khác

để cung cấp việc phân giải địa chỉ/tên lôgíc

Cả hai giao thức này đều được sử dụng để xác định địa chỉ IP của một thiết bị từđịa chỉ MAC đã biết BOOTP là một bước cải tiến đối với RARP và hiện được sửdụng nhiều hơn RARP Các máy tính khi khởi động sẽ sử dụng giao thức này để lấyđược địa chỉ IP của chúng từ một máy chủ BOOTP trên mạng Giao thức BOOTP sẽgiám sát các gói tin yêu cầu địa chỉ do các host gửi tới máy chủ BOOTP sẽ được trảlời

DHCP (Dynamic Host Configuration Protocol): Giao thức cấu hình chủ động

DHCP đơn giản hoá việc quản lý địa chỉ IP trong một mạng Các máy chủ DHCPduy trì một danh sách gồm các địa chỉ chưa được sử dụng và các địa chỉ đã được gán

và truyền thông tin về địa chỉ tới các host yêu cầu DHCP gồm hai thành phần sauđây:

Một giao thức để phân phối các tham số cầu hình IP từ máy chủ DHCP tới host Một giao thức xác định các địa chỉ IP sẽ được gán cho các host như thế nào

.II.2 Giao thức IP

.II.2.1 Khái quát về giao thức IP

Nhiệm vụ chính của giao thức IP là cung cấp khả năng kết nối các mạng con thànhliên kết mạng để truyền dữ liệu, vai trò của IP là vai trò của giao thức tầng mạngtrong mô hình OSI Giao thức IP là một giao thức kiểu không liên kết(connectionlees) có nghĩa là không cần có giai đoạn thiết lập liên kết trước khi truyền

dữ liệu

Trang 32

Sơ đồ địa chỉ hóa để định danh các trạm (host) trong liên mạng được gọi là địa chỉ

IP 32 bits (32 bit IP address) Mỗi giao diện trong 1 máy có hỗ trợ giao thức IP đềuphải được gán 1 địa chỉ IP (một máy tính có thể gắn với nhiều mạng do vậy có thể cónhiều địa chỉ IP) Địa chỉ IP gồm 2 phần: địa chỉ mạng (netid) và địa chỉ máy (hostid).Mỗi địa chỉ IP có độ dài 32 bits được tách thành 4 vùng (mỗi vùng 1 byte), có thểbiểu thị dưới dạng thập phân, bát phân, thập lục phân hay nhị phân Cách viết phổbiến nhất là dùng ký pháp thập phân có dấu chấm (dotted decimal notation) để táchcác vùng Mục đích của địa chỉ IP là để định danh duy nhất cho một máy tính bất kỳtrên liên mạng

Do tổ chức và độ lớn của các mạng con (subnet) của liên mạng có thể khác nhau,người ta chia các địa chỉ IP thành 5 lớp, ký hiệu là A, B, C, D và E Trong lớp A, B, Cchứa địa chỉ có thể gán được Lớp D dành riêng cho lớp kỹ thuật multicasting Lớp Eđược dành những ứng dụng trong tương lai

Netid trong địa chỉ mạng dùng để nhận dạng từng mạng riêng biệt Các mạng liênkết phải có địa chỉ mạng (netid) riêng cho mỗi mạng Ở đây các bit đầu tiên của byteđầu tiên được dùng để định danh lớp địa chỉ (0 - lớp A, 10 - lớp B, 110 - lớp C, 1110 -lớp D và 11110 - lớp E)

Ở đây chúng ta xét cấu trúc của các lớp địa chỉ có thể gán được là lớp A, lớp B,lớp C

Cấu trúc của các địa chỉ IP như sau:

Mạng lớp A: địa chỉ mạng (netid) là 1 Byte và địa chỉ host (hostid) là 3 byte Mạng lớp B: địa chỉ mạng (netid) là 2 Byte và địa chỉ host (hostid) là 2 byte

Mạng lớp C: địa chỉ mạng (netid) là 3 Byte và địa chỉ host (hostid) là 1 byte

Lớp A cho phép định danh tới 126 mạng, với tối đa 16 triệu host trên mỗi mạng.Lớp này được dùng cho các mạng có số trạm cực lớn

Trang 33

.II.2.2 Gói tin trong giao thức IP

Đơn vị dữ liệu dùng trong IP được gọi là gói tin (datagram), có khuôn dạng mô tảnhư hình bên dưới

Hình 10 Cấu trúc gói tin trong giao thức IP VER (4 bits): chỉ version hiện hành của giao thức IP hiện được cài đặt, Việc có chỉ

số version cho phép có các trao đổi giữa các hệ thống sử dụng version cũ và hệ thống

sử dụng version mới

IHL (4 bits): chỉ độ dài phần đầu (Internet header Length) của gói tin datagram,

tính theo đơn vị từ ( 32 bits) Trường này bắt buột phải có vì phần đầu IP có thể có độdài thay đổi tùy ý Độ dài tối thiểu là 5 từ (20 bytes), độ dài tối đa là 15 từ hay là 60bytes

Type of service (8 bits): đặc tả các tham số về dịch vụ nhằm thông báo cho mạng

biết dịch vụ nào mà gói tin muốn được sử dụng, chẳng hạn ưu tiên, thời hạn chậm trễ,năng suất truyền và độ tin cậy Hình sau cho biết ý nghĩ của trường 8 bits này

Hình 11 Cấu trúc trường Type of service trong gói tin Ipv4

Trang 34

o Precedence (3 bit): chỉ thị về quyền ưu tiên gửi datagram, nó cógiá trị từ 0 (gói tin bình thường) đến 7 (gói tin kiểm soát mạng).

Hình 12 Các giá trị tương ứng của trường Precedence trong trường Type of serveice

o D (Delay) (1 bit): chỉ độ trễ yêu cầu trong đó

 D = 0 gói tin có độ trễ bình thường

 D = 1 gói tin độ trễ thấp

o T (Throughput) (1 bit): chỉ độ thông lượng yêu cầu sử dụng đểtruyền gói tin với lựa chọn truyền trên đường thông suất thấp hayđường thông suất cao

 T = 0 thông lượng bình thường và

 T = 1 thông lượng cao

o R (Reliability) (1 bit): chỉ độ tin cậy yêu cầu

 R = 0 độ tin cậy bình thường

 R = 1 độ tin cậy cao

Total Length (16 bits): chỉ độ dài toàn bộ gói tin, kể cả phần đầu tính theo đơn vị

byte với chiều dài tối đa là 65535 bytes Hiện nay giới hạn trên là rất lớn nhưng trongtương lai với những mạng Gigabit thì các gói tin có kích thước lớn là cần thiết

Trang 35

đoạn thì trường Flags được dùng điều khiển phân đoạn và tái lắp ghép bó dữ liệu Tùytheo giá trị của Flags sẽ có ý nghĩa là gói tin sẽ không phân đoạn, có thể phân đoạn

hay là gói tin phân đoạn cuối cùng Trường Fragment Offset cho biết vị trí dữ liệu

thuộc phân đoạn tương ứng với đoạn bắt đầu của gói dữ liệu gốc Ý nghĩa cụ thể củatrường Flags là:

o bit 0: reserved - chưa sử dụng, luôn lấy giá trị 0

o bit 1: (DF) = 0 (May Fragment) = 1 (Don't Fragment)

o bit 2: (MF) = 0 (Last Fragment) = 1 (More Fragments)

Fragment Offset (13 bits): chỉ vị trí của đoạn (fragment) ở trong datagram tính

theo đơn vị 8 bytes, có nghĩa là phần dữ liệu mỗi gói tin (trừ gói tin cuối cùng) phảichứa một vùng dữ liệu có độ dài là bội số của 8 bytes Điều này có ý nghĩa là phảinhân giá trị của Fragment offset với 8 để tính ra độ lệch byte

Time to Live (8 bits): qui định thời gian tồn tại (tính bằng giây) của gói tin trong

mạng để tránh tình trạng một gói tin bị quẩn trên mạng Thời gian này được cho bởitrạm gửi và được giảm đi (thường qui ước là 1 đơn vị) khi datagram đi qua mỗi routercủa liên mạng Thời lượng này giảm xuống tại mỗi router với mục đích giới hạn thờigian tồn tại của các gói tin và kết thúc những lần lặp lại vô hạn trên mạng Sau đây làmột số điều cần lưu ý về trường này :

o Nút trung gian của mạng không được gởi 1 gói tin mà trường này

có giá trị= 0

o Một giao thức có thể ấn định Time To Live để thực hiện cuộc ra

tìm tài nguyên trên mạng trong phạm vi mở rộng

o Một giá trị cố định tối thiểu phải đủ lớn cho mạng hoạt động tốt

Header Checksum (16 bits): Mã kiểm soát lỗi của header gói tin IP.

Source Address (32 bits): Địa chỉ của máy nguồn.

Destination Address (32 bits): địa chỉ của máy đích

Options (độ dài thay đổi): khai báo các lựa chọn do người gửi yêu cầu (tuỳ theo

từng chương trình)

Padding (độ dài thay đổi): Vùng đệm, được dùng để đảm bảo cho phần header

luôn kết thúc ở một mốc 32 bits

Trang 36

Data (độ dài thay đổi): Trên một mạng cục bộ như vậy, hai trạm chỉ có thể liên lạc

với nhau nếu chúng biết địa chỉ vật lý của nhau Như vậy vấn đề đặt ra là phải thựchiện ánh xạ giữa địa chỉ IP (32 bits) và địa chỉ vật lý (48 bits) của một trạm

.II.2.3 Các giao thức trong mạng IP

Để mạng với giao thức IP hoạt động được tốt người ta cần một số giao thức bổsung, các giao thức này đều không phải là bộ phận của giao thức IP và giao thức IP sẽdùng đến chúng khi cần

Giao thức ARP (Address Resolution Protocol): Ở đây cần lưu ý rằng các địa chỉ IP

được dùng để định danh các host và mạng ở tầng mạng của mô hình OSI, và chúngkhông phải là các địa chỉ vật lý (hay địa chỉ MAC) của các trạm trên đó một mạngcục bộ (Ethernet, Token Ring.) Trên một mạng cục bộ hai trạm chỉ có thể liên lạc vớinhau nếu chúng biết địa chỉ vật lý của nhau Như vậy vấn đề đặt ra là phải tìm đượcánh xạ giữa địa chỉ IP (32 bits) và địa chỉ vật lý của một trạm Giao thức ARP đãđược xây dựng để tìm địa chỉ vật lý từ địa chỉ IP khi cần thiết

Giao thức RARP (Reverse Address Resolution Protocol): Là giao thức ngược với

giao thức ARP Giao thức RARP được dùng để tìm địa chỉ IP từ địa chỉ vật lý

Giao thức ICMP (Internet Control Message Protocol): Giao thức này thực hiện

truyền các thông báo điều khiển (báo cáo về các tình trạng các lỗi trên mạng.) giữacác gateway hoặc một nút của liên mạng Tình trạng lỗi có thể là: một gói tin IPkhông thể tới đích của nó, hoặc một router không đủ bộ nhớ đệm để lưu và chuyểnmột gói tin IP, Một thông báo ICMP được tạo và chuyển cho IP IP sẽ "bọc"(encapsulate) thông báo đó với một IP header và truyền đến cho router hoặc trạmđích

.II.2.4 Các bước hoạt động của giao thức IP

Khi giao thức IP được khởi động nó trở thành một thực thể tồn tại trong máy tính

và bắt đầu thực hiện những chức năng của mình, lúc đó thực thể IP là cấu thành củatầng mạng, nhận yêu cầu từ các tầng trên nó và gửi yêu cầu xuống các tầng dưới nó

Trang 37

Ra quyết định chọn đường: hoặc là trạm đích nằm trên cùng mạng hoặc mộtgateway sẽ được chọn cho chặng tiếp theo.

Chuyển gói tin xuống tầng dưới để truyền qua mạng

Đối với router, khi nhận được một gói tin đi qua, nó thực hiện các động tác sau: Tính chesksum, nếu sai thì loại bỏ gói tin

Giảm giá trị tham số Time - to Live nếu thời gian đã hết thì loại bỏ gói tin

Ra quyết định chọn đường

Phân đoạn gói tin, nếu cần

Kiến tạo lại IP header, bao gồm giá trị mới của các vùng Time - to -Live,Fragmentation và Checksum

Chuyển datagram xuống tầng dưới để chuyển qua mạng

Cuối cùng khi một datagram nhận bởi một thực thể IP ở trạm đích, nó sẽ thực hiệnbởi các công việc sau:

Tính checksum Nếu sai thì loại bỏ gói tin

Tập hợp các đoạn của gói tin (nếu có phân đoạn)

Chuyển dữ liệu và các tham số điều khiển lên tầng trên

.II.3 Giao thức điều khiển truyền dữ liệu TCP

.II.3.1 Khái quát

TCP là một giao thức "có liên kết" (connection - oriented), nghĩa là cần phải thiếtlập liên kết giữa hai thực thể TCP trước khi chúng trao đổi dữ liệu với nhau Một tiếntrình ứng dụng trong một máy tính truy nhập vào các dịch vụ của giao thức TCPthông qua một cổng (port) của TCP Số hiệu cổng TCP được thể hiện bởi 2 bytes.Một cổng TCP kết hợp với địa chỉ IP tạo thành một đầu nối TCP/IP (socket) duynhất trong liên mạng Dịch vụ TCP được cung cấp nhờ một liên kết logic giữa mộtcặp đầu nối TCP/IP Một đầu nối TCP/IP có thể tham gia nhiều liên kết với các đầunối TCP/IP ở xa khác nhau Trước khi truyền dữ liệu giữa 2 trạm cần phải thiết lập

Trang 38

một liên kết TCP giữa chúng và khi không còn nhu cầu truyền dữ liệu thì liên kết đó

sẽ được giải phóng

Các thực thể của tầng trên sử dụng giao thức TCP thông qua các hàm gọi (functioncalls) trong đó có các hàm yêu cầu để yêu cầu, để trả lời Trong mỗi hàm còn có cáctham số dành cho việc trao đổi dữ liệu

.II.3.2 Các bước thực hiện để thiết lập một liên kết TCP/IP

Thiết lập một liên kết mới có thể được mở theo một trong 2 phương thức: chủ động(active) hoặc bị động (passive)

Phương thức bị động, người sử dụng yêu cầu TCP chờ đợi một yêu cầu liên kết gửiđến từ xa thông qua một đầu nối TCP/IP (tại chỗ) Người sử dụng dùng hàm passiveOpen có khai báo cổng TCP và các thông số khác (mức ưu tiên, mức an toàn)

Với phương thức chủ động, người sử dụng yêu cầu TCP mở một liên kết với mộtmột đầu nối TCP/IP ở xa Liên kết sẽ được xác lập nếu có một hàm Passive Opentương ứng đã được thực hiện tại đầu nối TCP/IP ở xa đó

Khi người sử dụng gửi đi một yêu cầu mở liên kết sẽ được nhận hai thông số trảlời từ TCP

Thông số Open ID được TCP trả lời ngay lập tức để gán cho một liên kết cục bộ(local connection name) cho liên kết được yêu cầu Thông số này về sau được dùng

để tham chiếu tới liên kết đó (Trong trường hợp nếu TCP không thể thiết lập đượcliên kết yêu cầu thì nó phải gửi tham số Open Failure để thông báo.)

Khi TCP thiết lập được liên kết yêu cầu nó gửi tham số Open Sucsess được dùng

để thông báo liên kết đã được thiết lập thành công Thông báo này dược chuyển đếntrong cả hai trường hợp bị động và chủ động Sau khi một liên kết được mở, việctruyền dữ liệu trên liên kết có thể được thực hiện

.II.3.3 Một số hàm thông dụng trong giao thức TCP

Trang 39

Hàm send(): Dữ liệu được gửi xuống TCP theo các khối (block) Khi nhận được

một khối dữ liệu, TCP sẽ lưu trữ trong bộ đệm (buffer) Nếu cờ PUSH được dựng thìtoàn bộ dữ liệu trong bộ đệm được gửi, kể cả khối dữ liệu mới đến sẽ được gửi đi.Ngược lại cờ PUSH không được dựng thì dữ liệu được giữ lại trong bộ đệm và sẽ gửi

đi khi có cơ hội thích hợp (chẳng hạn chờ thêm dữ liệu nữa để gữi đi với hiệu quảhơn)

Hàm reveive(): Ở trạm đích dữ liệu sẽ được TCP lưu trong bộ đệm gắn với mỗi

liên kết Nếu dữ liệu được đánh dấu với một cờ PUSH thì toàn bộ dữ liệu trong bộđệm (kể cả các dữ liệu được lưu từ trước) sẽ được chuyển lên cho người sữ dụng.Còn nếu dữ liệu đến không được đánh dấu với cờ PUSH thì TCP chờ tới khi thíchhợp mới chuyển dữ liệu với mục tiêu tăng hiệu quả hệ thống

Nói chung việc nhận và giao dữ liệu cho người sử dụng đích của TCP phụ thuộcvào việc cài đặt cụ thể Trường hợp cần chuyển gấp dữ liệu cho người sử dụng thì cóthể dùng cờ URGENT và đánh dấu dữ liệu bằng bit URG để báo cho người sử dụngcần phải sử lý khẩn cấp dữ liệu đó

.2 Các bước thực hiện khi đóng một liên kết:

Việc đóng một liên kết khi không cần thiết được thực hiên theo một trong hai cách:

dùng hàm Close hoặc dùng hàm Abort

Hàm close(): yêu cầu đóng liên kết một cách bình thường Có nghĩa là việc truyền

dữ liệu trên liên kết đó đã hoàn tất Khi nhận được một hàm Close TCP sẽ truyền đi

tất cả dữ liệu còn trong bộ đệm thông báo rằng nó đóng liên kết Lưu ý rằng khi một

người sử dụng đã gửi đi một hàm Close thì nó vẫn phải tiếp tục nhận dữ liệu đến trên

liên kết đó cho đến khi TCP đã báo cho phía bên kia biết về việc đóng liên kết vàchuyển giao hết tất cả dữ liệu cho người sử dụng của mình

Hàm abort(): Người sử dụng có thể đóng một liên kết bất và sẽ không chấp nhận

dữ liệu qua liên kết đó nữa Do vậy dữ liệu có thể bị mất đi khi đang được truyền đi.TCP báo cho TCP ở xa biết rằng liên kết đã được hủy bỏ và TCP ở xa sẽ thông báocho người sử dụng cũa mình

.3 Một số hàm khác của TCP

Hàm Status(): cho phép người sử dụng yêu cầu cho biết trạng thái của một liên kết cụ thể,

khi đó TCP cung cấp thông tin cho người sử dụng

Hàm Error(): thông báo cho người sử dụng TCP về các yêu cầu dịch vụ bất hợp lệ liên quan

Trang 40

.II.3.4 Segment trong giao thức TCP

Đơn vị dữ liệu sử dụng trong TCP được gọi là segment (đoạn dữ liệu), có các tham số với ýnghĩa như sau:

Hình 13 Cấu trúc segment trong giao thức TCP

Source Por (16 bits): Số hiệu cổng TCP của trạm nguồn

Destination Port (16 bit): Số hiệu cổng TCP của trạm đích

Sequence Number (32 bit): số hiệu của byte đầu tiên của segment trừ khi bit SYNđược thiết lập Nếy 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

Acknowledgment Number (32 bit): số hiệu của segment tiếp theo mà trạm nguồnđang chờ để nhận Ngầm ý báo nhận tốt (các) segment mà trạm đích đã gửi cho trạmnguồn

Data offset (4 bit): số lượng bội của 32 bit (32 bit words) trong TCP header (tham

số này chỉ ra vị trí bắt đầu của nguồn dữ liệu)

Ngày đăng: 23/04/2019, 03:03

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w