You are on page 1of 66

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI

KHOA ĐIỆN TỬ

LẬP TRÌNH MẠNG


Chương 1: Tổng quan về mạng máy tính

1
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CHƯƠNG 1: TỔNG QUAN VỀ MẠNG MÁY TÍNH

• Mạng máy tính là một tập hợp


các máy tính được nối với
nhau bởi môi trường truyền
(đường truyền) theo một cấu
trúc nào đó và thông qua đó
các máy tính trao đổi dữ liệu
và chia sẻ tài nguyên qua lại
cho nhau.

2
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC MỤC TIÊU CỦA MẠNG MÁY TÍNH

• Sử dụng chung tài nguyên


• Tăng độ tin cậy của hệ thống thông tin
• Tiết kiệm chi phí
• Quản lý tập trung
• Tạo ra môi trường truyền thông mạnh giữa nhiều người
sử dụng trên phạm vi địa lý rộng.

3
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

PHÂN LOẠI MẠNG MÁY TÍNH

• Các tiêu chí phân loại:


• Khoảng cách địa lý
• Kỹ thuật chuyển mạch
• Kiến trúc mạng
• Hệ điều hành mạng đang sử dụng

4
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

PHÂN LOẠI MẠNG THEO PHÂN LOẠI THEO KỸ THUẬT


KHOẢNG CÁCH ĐỊA LÝ CHUYỂN MẠCH

• Mạng cục bộ: LAN (Local Area Netwoks) • Mạng chuyển mạch kênh ( circuit
• Mạng đô thị MAN ( Metropolitan Area switched network)
Networks ) • Mạng chuyển mạch thông báo
• Mạng diện rộng WAN ( Wide Area (message switched network)
Networks )
• Mạng chuyển mạch gói ( packet
• Mạng toàn cầu GAN (Global Area switched network)
Networks)

5
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

PHÂN LOẠI THEO KIẾN TRÚC MẠNG

• Kiến trúc mạng gồm 2 yếu tố : hình dạng mạng ( Network Topology)
và giao thức mạng ( Network protocol)
• Phân loại theo topo mạng: mạng hình sao, mạng hình tròn, mạng
tuyến tính
• Phân loại theo giao thức mạng: mạng TCPIP, mạng NETBIOS
• Các cách phân loại trên chỉ áp dụng cho mạng cục bộ

6
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC THÀNH PHẦN CƠ BẢN TRONG MẠNG MÁY TÍNH

• Có ít nhất 2 máy tính.


• Một giao tiếp mạng trên mỗi máy (NIC : Network interface Card)
• Môi trường truyền :
• Dây cáp mạng
• Môi trường truyền không dây.
• Hệ điều hành mạng:
• UNIX, Windows 98, Windows NT,…, Novell Netware,…

7
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CẤU TRÚC CỦA MẠNG (TOPOLOGY) CỤC BỘ


• Phương thức “một điểm – một điểm” các đường truyền riêng biệt được
thiết lâp để nối các cặp máy tính lại với nhau. Mỗi máy tính có thể truyền
và nhận trực tiếp dữ liệu hoặc có thể làm trung gian như lưu trữ những
dữ liệu mà nó nhận được rồi sau đó chuyển tiếp dữ liệu đi cho một máy
khác để dữ liệu đó đạt tới đích.
• Phương thức “một điểm – nhiều điểm ” tất cả các trạm phân chia chung
một đường truyền vật lý. Dữ liệu được gửi đi từ một máy tính sẽ có thể
được tiếp nhận bởi tất cả các máy tính còn lại, bởi vậy cần chỉ ra điạ chỉ
đích của dữ liệu để mỗi máy tính căn cứ vào đó kiểm tra xem dữ liệu có
phải dành cho mình không nếu đúng thì nhận còn nếu không thì bỏ qua.

8
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CẤU TRÚC CỦA MẠNG (TOPOLOGY) CỤC BỘ

• KIỂU TRUYỀN
Unicast : Từ 1 node đến 1 node
Broadcast : Từ 1 node đến tất cả các node trong một vùng mạng
Multicast : Từ 1 node đến 1 nhóm
Anycast: Từ 1 node đến 1 node bất kỳ trong một nhóm

9
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

NHỮNG CẤU TRÚC CHÍNH CỦA MẠNG CỤC BỘ


Đồ hình mạng (network topology):
cách thức bố trí đường truyền để nối kết các nút mạng
Phân loại:
Đồ hình vật lí : Mô tả cách bố trí đường truyền thật sự
Đồ hình logic: Mô tả con đường mà dữ liệu thật sự di chuyển.
Các kiểu đồ hình mạng:
Bus: các thiết bị nối trực tiếp vào một đường mạng chung
Star: các thiết bị nối trực tiếp vào một thiết bị chung
Ring: các thiết bị nối với nhau tạo thành vòng tròn
Mesh: 2 thiết bị bất kì được nối trực tiếp với nhau

10
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

MẠNG HÌNH BUS


• Tất cả các máy tính được nối lại bằng
một dây dẫn (Cáp đồng trục gầy hoặc
đồng trục béo). Khi một trong số
chúng thực hiện truyền tin, tín hiệu sẽ
lan truyền đến tất cả các máy tính còn
lại. Nếu có hai máy tính truyền tin
cùng một lúc thì sẽ dẫn đến tình trạng
đụng độ và trạng thái lỗi xẩy ra.

 các node chia sẻ chung 1


đường truyền
11
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

MẠNG HÌNH VÒNG


• Tồn tại một thẻ bài (token: một gói tin nhỏ)
lần lượt truyền qua các máy tính. Một máy
tính khi truyền tin phải tuân thủ nguyên tắc
sau:
• Chờ cho đến khi token đến nó và nó sẽ lấy
token ra khỏi vòng tròn.
• Gởi gói tin của nó đi một vòng qua các
máy tính trên đường tròn.
• Chờ cho đến khi gói tin quay về
• Đưa token trở lại vòng tròn để nút bên
cạnh nhận token

12
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

MẠNG HÌNH SAO


• Tất cả các trạm được nối vào một thiết bị trung
tâm có nhiệm vụ nhận tín hiệu từ các trạm và
chuyển tín hiệu đến trạm đích với phương thức
kết nối là phương thức “một điểm – một điểm “.
Thiết bị trung tâm hoạt động giống như một tổng
đài cho phép thực hiện việc nhận và truyền dữ
liệu từ trạm này tới các trạm khác.

13
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

MẠNG HÌNH LƯỚI

• Dạng lưới (mesh)


Một node nối với nhiều node
Gia tăng độ tin cậy của hệ thống
Có 2 loại:
mesh 1 phần (bán phần)
mesh toàn phần

14
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

BẢNG SO SÁNH TÍNH NĂNG GIỮA CÁC CẤU TRÚC CỦA


MẠNG LAN
Đường thẳng Vòng Tròn Hình sao

Ứng dụng Tốt cho trường hợp mạng nhỏ Tốt cho trường hợp mạng có số trạm ít hoạt hiên nay mạng sao là cách tốt nhất cho trường
và mạng có giao thông thấp và động với tốc độ cao,không cách nhau xa hợp phải tích hợp dữ liệu và tín hiệu tiếng.Các
lưu lượng dữ liệu thấp lắm hoặc mạng có lưu lượng dữ liệu phân mạng đện thoại công cộng có cấu trúc này
bố không đều.
Độ phức tạp Tương đối không phức tạp Đòi hỏi thiết bị tương đối phức tạp .Mặt Mạng sao được xem là khá phức tạp . Các trạm
khác việc đưa thông điệp đi trên tuyến là được nối với thiết bị trung tâm và lần lượt hoạt
đơn giản, vì chỉ có 1 con đường, trạm phát động như thiết bị trung tâm hoặc nối được tới
chỉ cần biết địa chỉ của trạm nhận , các các dây dẫn truyền từ xa
thông tin để dẫn đường khác thì không cần
thiết
Hiệu suất Rất tốt dưới tải thấp có thể Có hiệu quả trong trường hợp lượng lưu Tốt cho trường hợp tải vừa tuy nhiên kích thước
giảm hiệu suất rất mau khi tải thông cao và khá ổn định nhờ sự tăng chậm và khả năng , suy ra hiệu suất của maïng phụ
tăng thời gian trễ và sự xuống cấp so với các thuộc trực tiếp vào sức mạnh của thiết bị trung
mạng khác tâm.

15
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

Đường thẳng Vòng Tròn Hình sao

Tổng phí Tương đối thấp đặc biệt do nhiều thiết Phải dự trù gấp đôi nguồn lực hoặc Tổng phí rất cao khi làm nhiêm vụ của thiết bị trung
bị đã phát triển hòa chỉnh và bán sảm phải có 1 phương thức thay thế khi tâm, thiết bị trung tâm ï không được dùng vào việc
phẩm ở thị trường .Sự dư thừa kênh 1 nút không hoạt động nếu vẫn khác .Số lượng dây riêng cũng nhiều.
truyền được khuyến để giảm bớt nguy muốn mạng hoạt động bình thường
cơ xuất hiện sự cố trên mạng
Nguy cơ Một trạm bị hỏng không ảnh hưởng Một trạm bị hỏng có thể ảnh hưởng Độ tin cậy của hệ thống phụ thuộc vào thiết bị trung
đến cả mạng. Tuy nhiên mạng sẽ có đến cả hệ thống vì các trạm phục tâm, nếu bị hỏng thì mạng ngưng hoạt động Sự ngưng
nguy cơ bị tổn hại khi sự cố trên thuộc vào nhau. Tìm 1 repeater hoạt động tại thiết bị trung tâm thường không ảnh
đường dây dẫn chính hoặc có vấn đề hỏng rất khó ,vả lại việc sửa chữa hưỏng đến toàn bộ hệ thống .
với tuyến. Vấn đề trên rất khó xác định thẳng hay dùng mưu mẹo xác định
được lại rất dễ sửa chữa điểm hỏng trên mạng có địa bàn
rông rất khó
Khả năng Việc thêm và định hình lại mạng này Tương đối dễ thêm và bớt các trạm Khả năng mở rộng hạn chế, đa số các thiết bị trung tâm
mở rộng rất dễ.Tuy nhiên việc kết nối giữa các làm việc mà không phải nối kết chỉ chịu đựng nổi 1 số nhất định liên kết. Sự hạn chế về
máy tính và thiết bị của các hãng khác nhiều cho mỗi thay đổi Giá thành tốc độ truyền dữ liệu và băng tần thường được đòi hỏi
nhau khó có thể vì chúng phải có thể cho việc thay đổi tương đối thấp ở mỗi người sử dụng. Các hạn chế này giúp cho các
nhận cùng địa chỉ và dữ liệu chức năng xử lý trung tâm không bị quá tải bởi tốc độ
thu nạp tại tại cổng truyền và giá thành mỗi cổng
truyền của thiết bị trung tâm thấp .

16
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

PHƯƠNG THỨC TRUYỀN TÍN HIỆU

Dùng băng tần cơ sở


(baseband): Hầu hết các mạng
cục bộ sử dụng phương thức
băng tần cơ sở. Với phương
thức truyền tín hiệu này này tín
hiệu có thể được truyền đi dưới
cả hai dạng: tương tự (analog)
hoặc số (digital)

• Dùng băng tần rộng (broadband): chia giải thông (tần số) của đường truyền thành nhiều giải tần
con trong đó mỗi dải tần con đó cung cấp một kênh truyền dữ liệu tách biệt nhờ sử dụng một
cặp modem đặc biệt gọi là bộ giải / Điều biến RF cai quản việc biến đổi các tín hiệu số thành tín
hiệu tương tự có tần số vô tuyến (RF) bằng kỹ thuật ghép kênh.
17
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

PHẦN MỀM MẠNG


• Phần mềm mạng được xây dựng dựa trên nền tảng của 3 khái niệm là
giao thức (protocol), dịch vụ (service) và giao diện (interface).
• Giao thức (Protocol): Mô tả cách thức hai thành phần giao tiếp trao đổi
thông tin với nhau.
• Dịch vụ (Services): Mô tả những gì mà một mạng máy tính cung cấp
cho các thành phần muốn giao tiếp với nó.
• Giao diện (Interfaces): Mô tả cách thức mà một khách hàng có thể sử
dụng được các dịch vụ mạng và cách thức các dịch vụ có thể được truy
cập đến.

18
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CẤU TRÚC THỨ BẬC CỦA GIAO THỨC


• Các dịch vụ mà một mạng máy tính cung cấp được tổ chức thành các tầng/lớp (layers)
• Hai thành phần bộ phận ở hai máy tính khác nhau, nhưng ở cùng cấp, chúng luôn luôn thống nhất
với nhau về cách thức mà chúng sẽ trao đổi thông tin. Qui tắc trao đổi thông tin này được mô tả
trong một giao thức (protocol).

19
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CẤU TRÚC THỨ BẬC CỦA GIAO THỨC


• Xem xét một ví dụ khác liên quan đến hệ thống truyền tập tin từ máy tính X sang máy
Y. Hai máy này được nối với nhau bởi một dây cáp tuần tự  xem xét một mô
hình gồm 3 tầng:

20
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

DỊCH VỤ MẠNG
• Có hai kiểu dịch vụ: Định hướng nối kết và Không nối kết.
• Dịch vụ định hướng nối kết (Connection-oriented): Đây là dịch vụ vận hành theo
mô hình của hệ thống điện thoại. Đầu tiên bên gọi phải thiết lập một nối kết, kế
đến thực hiện nhiều cuộc trao đổi thông tin và cuối cùng thì giải phóng nối kết.
• Dịch vụ không nối kết (Connectionless): Đây là dịch vụ vận hành theo mô hình
kiểu thư tín. Dữ liệu gửi trước tiên được đặt vào trong một bao thư trên đó có ghi
rõ địa chỉ của người nhận và địa chỉ của người gởi. Sau đó sẽ gởi cả bao thư và
nội dung đến người nhận.

21
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

DỊCH VỤ MẠNG

22
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

DỊCH VỤ MẠNG
Sự khác biệt giữa dịch vụ và giao thức
Giao thức và dịch vụ là hai nền tảng rất quan trọng trong việc
thiết kết và xây dựng một hệ thống mạng. Cần hiểu rõ ý nghĩa và
phân biệt sự khác biệt giữa chúng.
• Dịch vụ: là một tập các phép toán mà một tầng cung cấp cho
tầng phía trên của nó gọi sử dụng.
• Giao thức: là một tập các luật mô tả khuôn dạng dữ liệu, ý nghĩa
của các gói tin và thứ tự các gói tin được sử dụng trong quá trình
giao tiếp.
• Chú ý: Cùng một service có thể được thực hiện bởi các protocol
khác nhau; mỗi protocol có thể được cài đặt theo một cách thức
khác nhau ( sử dụng cấu trúc dữ liệu khác nhau, ngôn ngữ lập
trình là khác nhau, vv...)

23
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC XU HƯỚNG PHÁT TRIỂN DỊCH VỤ MẠNG


• Cung cấp các dịch vụ vào các nguồn thông tin ở xa để khai thác
và xử lý thông tin. Cung cấp các dịch vụ mua bán, giao dịch
mạng
• Phát triển các dịch vụ tương tác giữa người với người trên phạm
vi diện rộng, trao đổi thông tin đa dịch vụ, đa phương tiện. Các
dịch vụ thư điện tử, video hội nghị, chữa bệnh từ xa.
• Các dịch vụ giải trí trực tuyến: nghe nhạc, chơi game online…

24
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC DỊCH VỤ PHỔ BIẾN TRÊN MẠNG MÁY TÍNH

• Dịch vụ tệp (File service): cho phép chuyển giao các file từ máy này
sang máy khác,
• Dịch vụ thư điện tử ( E_mail): cho phép gửi thư, chuyển phát nhanh.
• Dịch vụ in ấn
• Dịch vụ chuyển luồng dữ liệu, cho phép làm việc theo nhóm

25
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG


• Tập hợp các quy tắc, quy ước để đảm bảo cho các máy tính trên
mạng có thể giao tiếp với nhau gọi là giao thức.
• Các thành phần chính của giao thức:
• Cú pháp: định dạng dữ liệu, phương thức mã hóa, mức tín hiệu
• Ngữ nghĩa: thông tin điều khiển, điều khiển lưu lượng và xử lý lỗi
• Trao đổi thông tin giữa các máy tính trên mạng có thể thực hiện trực
tiếp hoặc gián tiếp

26
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CHỨC NĂNG GIAO THỨC


• Đóng gói
• Phân đoạn và hợp lại: Gói dữ liệu trao đổi giữa 2 thực thể qua giao thức được gọi
là đơn vị giao thức dữ liệu PDU ( Protocol Data Unit)
• Điều khiển liên kết: gồm 2 loại: liên kết có định hướng kết nối và liên kết không
định hướng
• Giám sát
• Điều khiển lưu lượng
• Điều khiển lỗi
• Đồng bộ hóa
• Địa chỉ hóa
27
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC MÔ HÌNH XỬ LÝ DỮ LIỆU


• Mô hình client – server: phân chia thao tác thành 2 phần, phía
Client yêu cầu dịch vụ từ mạng, phía Server tiếp nhận các yêu
cầu từ Client và cung cấp dịch vụ cho người dùng

28
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC MÔ HÌNH XỬ LÝ DỮ LIỆU

• Mô hình ngang hàng (peer to peer): trong mô hình này tất cả các
máy đều vừa là máy chủ vừa là máy khách. Mô hình này thường
dùng trong làm việc nhóm.
• Mô hình lai (Hybrid) là sự kết hợp giữa mô hình client/ server
và peer to peer. Phần lớn các hệ thống mạng thuộc mô hình này.

29
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

MÔ HÌNH KIẾN TRÚC ĐA TẦNG

• Các mạng máy tính được thiết kế


và cài đặt theo cấu trúc đa tầng
• Mỗi thành phần mạng là 1 hệ
thống gồm nhiều tầng mỗi tầng
thực hiện 1 số chức năng truyền
thông.
• Các tầng được thiết kế chồng lên
nhau

30
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

MÔ HÌNH KẾT NỐI HỆ THỐNG MỞ OSI

Về nguyên tắc, tầng n của một hệ thống chỉ giao tiếp, trao đổi thông tin với tầng n của hệ thống
khác. Mỗi tầng sẽ có các đơn vị truyền dữ liệu riêng:
• Tầng vật lý: bit
• Tầng liên kết dữ liệu: Khung (Frame)
• Tầng Mạng: Gói tin (Packet)
• Tầng vận chuyển: Đoạn (Segment)
31
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

ĐÓNG GÓI DỮ LIỆU

32
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CHỨC NĂNG CÁC TẦNG

33
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

TẦNG ỨNG DỤNG - APPLICATION


• Cung cấp các dịch vụ mạng cho người dùng cuối
Các ứng dụng mạng phổ biến: E-mail, Web, Instant Message, Telnet, SSH, FTP, P2P file sharing,
Networked Games, Video conference
Process = tiến trình
chương trình chạy trên máy
Nhiều luồng công việc (thread – tiểu trình)

34
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

TẦNG ỨNG DỤNG - APPLICATION


Các ứng dụng mạng ::  Chạy trên các end-system, liên lạc với nhau qua mạng

 Kiến trúc : Server-client Peer-to-peer

35
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

TẦNG ỨNG DỤNG - APPLICATION

36
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

TẦNG ỨNG DỤNG - APPLICATION

LẬP TRÌNH ỨNG DỤNG MẠNG


• Socket
- “Cánh cửa” giữa ứng dụng và giao thức tầng transport (TCP,UDP)
- Cung cấp interface để lập trình mạng tại tầng Transport
- Một socket là một end-point của một liên kết giữa hai ứng dụng
• Windows Socket Application Programming Interface (Winsock API)
- Thư viện các hàm socket
- Xây dựng các ứng dụng mạng trên nền TCP/IP

37
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

TẦNG ỨNG DỤNG - APPLICATION

LẬP TRÌNH ỨNG DỤNG MẠNG


1. Xác định kiến trúc mạng: Client – Server, Peer-toPeer
2. Giao thức sử dụng tầng Transport: TCP, UDP
3. Các port sử dụng ở Server và Client
4. Giao thức tầng ứng dụng khi trao đổi dữ liệu giữa hai end-host
5. Lập trình

38
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

TẦNG VẬN CHUYỂN – TRANSPORT


• Cung cấp kênh truyền dữ liệu ở mức logic giữa 2 tiến trình
trên 2 máy.
• Thực thi ở end-system
Bên gởi: thực hiện Dồn kênh
Nhận dữ liệu từ tầng ứng dụng (từ các socket)
Phân đoạn thông điệp ở tầng ứng dụng thành các segment
Dán nhãn dữ liệu: đóng gói theo giao thức tại tầng Transport
Chuyển các segment xuống tầng mạng (network layer)
• Bên nhận: thực hiện Phân kênh
Nhận các segment từ tầng mạng
Phân rã các segment thành thông điệp tầng ứng dụng
Chuyển thông điệp lên tầng ứng dụng (đến socket tương
ứng)

39
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

TẦNG VẬN CHUYỂN – TRANSPORT


• Dồn kênh (Multiplexing):
Thực hiện tại bên gởi
Thu thập dữ liệu từ các socket
Dán nhãn dữ liệu với 1 header
• Phân kênh (Demultiplexing):
Thực hiện tại bên nhận
Phân phối các segment nhận được cho
socket tương ứng
• Khi đóng gói dữ liệu ở tầng transport, header
sẽ thêm vào:
Source port
Destination port

40
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

TẦNG VẬN CHUYỂN – TRANSPORT


• NGUYÊN LÝ ĐƯỜNG TRUYỀN DỮ LIỆU ĐÁNG TIN CẬY
Đặc tính của đường truyền không tin cậy quyết định độ
phức tạp của nghi thức truyền tin cậy

Nghi thức truyền dữ liệu đáng tin cậy


RDT 1.0
RDT 2.0, RDT 2.1, RDT 2.2
RDT 3.0
Pipeline
Go-back-N
Gởi lại có chọn

41
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

TẦNG VẬN CHUYỂN – TRANSPORT


• NGUYÊN LÝ ĐƯỜNG TRUYỀN DỮ LIỆU ĐÁNG TIN CẬY

42
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

TẦNG VẬN CHUYỂN – TRANSPORT


• NGUYÊN LÝ ĐƯỜNG TRUYỀN DỮ LIỆU ĐÁNG TIN CẬY

43
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

TẦNG VẬN CHUYỂN – TRANSPORT


• TCP = Transport Control Protocol

44
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

TẦNG VẬN CHUYỂN – TRANSPORT


• TCP = Transport Control Protocol

45
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

TẦNG VẬN CHUYỂN – TRANSPORT


• UDP: User Datagram Protocol [rfc768]

46
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG

Tìm hiểu giao thức IPv4 và IPv6.So sánh 2 giao thức này
Slide thảo luận 10 slide theo nhóm
 Nhóm thảo luận luận chia trên dhcnhn.vn
45 phút thực hiện

47
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG


• UDP (User Datagram Protocol)
• TCP (Transmission Control Protocol )
• DHCP ( Dynamic Host Configuration Protocol )
• FPT( File Transfer Protocol )
• HTTP ( Hyper Text Transfer Protocol )
• POP3 ( Post Office Protocol Version 3 )
• SMTP ( Simple Mail Transfer Protocol )

48
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG

49
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG


• UDP ( User Datagram Protocol ) là một trong những giao thức mạng
máy tính của TCP/IP . UDP được sử dụng để gởi các datagram ( gói tin)
đến các máy tính trong hệ thống. Nó không cung cấp sự tin cậy và thứ
tự truyền nhận như TCP , các gói dữ liệu có thể đến không đúng thứ tự
hoặc bị mất mà không thông báo . Tuy nhiên UDP gửi nhanh và hiệu
quả hơn đối với các gói tin kích thước nhỏ và có yêu cầu khắt khe về
thời gian .
• Giao thức có dịch vụ liên kết không tin cậy và nó hữu dụng đối với
việc trả lời các truy vấn nhỏ với số lượng lớn người dùng yêu cầu vì thế
UDP thường sử dụng trong các ứng dụng như : DNS ( Domain Name
System), ứng dụng Streaming media , Voice Over IP , Trivial File
Transfer Protocol (TFTP), game online.
50
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG

• TCP ( Transmission Control Protocol ) giao thức ở tầng giao vận cũng giống UDP sử
dụng giao thức IP trong tầng mạng . Nhưng khác với UDP , TCP cung cấp dịch vụ liên kết
tin cậy vì thế TCP hỗ trợ nhiều giao thức phổ biến nhất trên internet và các ứng dụng trong
đó các dịch vụ web WWW, thư điện tử email ,SSH..

 TCP là giao thức vận chuyển tinh vi hơn, dùng để cung cấp
dịch vụ vận chuyển tin cậy, hướng nối kết theo kiểu truyền
thông tin bằng cách phân luồng các bytes.

51
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG


• TCP là giao thức hướng byte, nghĩa là bên gởi ghi các bytes lên nối kết TCP, bên nhận đọc các
bytes từ nối kết TCP đó

52
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG

• Bắt tay trong TCP  TCP Hủy bắt tay trong TCP  Điều khiển thông lượng trong TCP TCP
sử dụng giao thức bắt tay 3 Việc hủy bắt tay trong TCP dùng phương pháp điều khiển thông
chiều. được thực hiện qua 4 bước: lượng “cửa sổ trượt với kích thước cửa
sổ động”.

53
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG


• DHCP ( Dynamic Host Configuration Protocol ) là giao thức được cài đặt và
cấu hình trên cả Client và Server . Một máy chủ quản lý và cấp phát địa chỉ IP,
được sử dụng để quản lý danh sách các địa chỉ IP , đồng thời nó luôn ở trạng
thái lắng nghe các kết nối từ DHCP Client. Khi có một yêu cầu từ phía DHCP
Client , nó sẽ kiểm tra trong cơ sở dữ liệu của nó để biết các địa chỉ IP nào
chưa được cấp phát và cấp cho DHCP Client một địa chỉ .DHCP Client được
setup trên máy client , nó có chức năng gửi yêu cầu đến DHCP Server và
nhận địa chỉ được cấp về để sử dụng . DHCP được triền khai trên Windows
Server (DHCP Server) và Linux Server (dhcpd.conf).
54
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG


DHCP = Dynamic Host Configuration
Protocol
RFC 1533, 1534, 1541, 1542, 2131
Tiền thân: BOOTP
Hoạt động tầng ứng dụng: Giao thức hoạt
động ở tầng Transport: UDP
Chức năng: cấp phát địa chỉ IP động
Mô hình Client - Server:
Server : Port: 67 - Cung cấp địa thông tin
cấu hình TCP/IP cho các client
Client : Port: 68 - Yêu cầu server cấp
thông tin cấu hình TCP/IP

55
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG

56
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG


• FPT( File Transfer Protocol ) giao thức truyền tin ,thường được dùng để trao đổi tập tin qua
mạng lưới truyền thông nằm trong tầng ứng dụng trong bộ giao thức TCP/IP . FTP hoạt động
cần có ít nhất hai máy tính , một máy chủ gọi là FTP server và một máy FTP Client
• FTP Server dùng để chạy phần mềm cung cấp dịch vụ FTP và lắng nghe yêu cầu về dịch vụ
của các máy tính khác trên mạng ở windows server Và FTP Client là máy khách chạy phần
mềm FTP dành cho người dùng dịch vụ để kết nối đến FTP Server .Khi hai máy kết nối với
nhau , FTP Client có thể xử lý một số thao tác về tập tin , như tải tập tin lên FTP Server , tải
tập tin từ FTP Server xuống máy của mình, đổi tên tập tin, ngay cả xóa tập tin ở FTP Server .
FTP Client kết nối với FTP Server thông qua cổng mặc định 21 trên nền TCP

57
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG


• Thông qua dịch vụ FTP, người dùng tại một máy tính có thể đăng nhập và thao tác lên hệ thống tập tin
được chia sẻ của một máy tính từ xa.

58
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG


• HTTP ( Hyper Text Transfer Protocol ) giao thức truyền tin siêu văn bản, Được dùng
để liên hệ thông tin giữ web Server và trình duyệt web ( Web Browser ). Trình duyệt
web và Web Server liên hệ với nhau thông qua cổng mặc định 80
• Simple Network Management Protocol được sử dụng để quản lý mạng. SNMP có khả
năng giám sát, cấu hình và điều khiển các thiết bị mạng. SNMP trap cũng có thể được
cấu hình trên các thiết bị mạng, để thông báo cho máy chủ trung tâm khi xảy ra hành
động cụ thể. Cổng mặc định của SNMP là 161/162.
• HTTPS được sử dụng với HTTP để cung cấp các dịch vụ tương tự, nhưng với kết nối
bảo mật được cung cấp bởi SSL hoặc TLS. Cổng mặc định của HTTPS là 443.

59
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG

• POP3 ( Post Office Protocol Version 3 ): là một giao thức dùng để tải thư điện tử từ Mail Server về máy tính
, thông qua kết nối TCP/IP. Trình duyệt mail Client sẽ kết nối đến Mail Server để nhận thư thông qua
cổng mặc định 110 của giao thức POP3
• SMTP ( Simple Mail Transfer Protocol ) giao thức truyền thư đơn giản , được sử dụng để truyền nội dung
thư điện tử từ Mail Server này đến Mail Server khác . Nó thực hiện nhiệm vụ truyền thư giữa các Mail
Server thông qua cổng mặc định 25.
• IMAP phiên bản 3 là một giao thức chính khác được sử dụng để lấy thư từ máy chủ. IMAP không xóa nội
dung khỏi hộp thư của máy chủ. Cổng mặc định của IMAP là 143 và cổng được bảo mật là 993.

60
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG


• Electronic Mail (SMTP, MIME, POP3, IMAP)

61
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG


• Internet Protocol (IP) là giao thức chính trong Internet protocol suite để chuyển tiếp dữ liệu qua mạng.
Chức năng định tuyến của Internet Protocol về cơ bản giúp thiết lập Internet. Trước đây, giao thức này
là datagram service không kết nối trong Transmission Control Program (TCP) ban đầu. Do đó, Internet
protocol suite còn được gọi là TCP/IP.
• Telnet là phương thức chính được sử dụng để quản lý các thiết bị mạng ở cấp lệnh. Không giống như
SSH, Telnet không cung cấp kết nối an toàn, mà chỉ cung cấp kết nối không bảo mật cơ bản. Cổng mặc
định của Telnet là 23.
• SSH là phương thức chính được sử dụng để quản lý các thiết bị mạng một cách an toàn ở cấp lệnh.
SSH thường được sử dụng như sự thay thế cho Telnet, vì giao thức này không hỗ trợ các kết nối an
toàn. Cổng mặc định của SSH là 22.

62
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG


• Domain Name System (DNS) được sử dụng để chuyển đổi tên miền thành địa chỉ IP. Hệ thống phân cấp DNS
bao gồm máy chủ gốc, TLD và máy chủ có thẩm quyền. Cổng mặc định của DNS là 53.

Định nghĩa một số thuật ngữ::


fee.haui@haui.edu.vn fee.haui@haui.edu.vn
- Không gian tên (name space) định nghĩa
tập các tên có thể có.
- Hệ thống tên duy trì một tập các ánh xạ
(collection of bindings) từ tên sang giá
trị…
- Một cơ chế phân giải (resolution
mechanism) là một thủ tục mà khi được gọi
với tham số là một tên…
- Một server tên (name server) là một kết
quả cài đặt cụ thể…

63
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG


• Domain Name System (DNS) được sử dụng để chuyển đổi tên miền thành địa chỉ IP. Hệ thống phân cấp DNS
bao gồm máy chủ gốc, TLD và máy chủ có thẩm quyền. Cổng mặc định của DNS là 53.

64
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

CÁC GIAO THỨC MẠNG MÁY TÍNH QUAN TRỌNG


• Mỗi server tên quản lý thông tin về một vùng dưới dạng một tập các mẫu tin tài nguyên (resource record). Mỗi
mẫu tin tài nguyên là một ánh xạ từ tên sang giá trị (name to value binding), cụ thể hơn là một mẫu tin gồm 5
trường: (Tên, Giá trị, Kiểu, Lớp, TTL)

Server tên của


ĐH CN HN

ĐT

65
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved
LẬP TRÌNH MẠNG

66
https://fee.haui.edu.vn/vn © 2021 Hanoi University of Industry All rights reserved

You might also like