Bài giảng Lập trình mạng - Chương 2: Bộ giao thức Internet TCP/IP - Trương Đình Huy
Chương 2. Bộ giao thức Internet
TCP/IP
Trương Đình Huy
Chương 2. Bộ giao thức Internet (TCP/IP)
• 2.1. Giới thiệu
• 2.2. Giao thức IPv4
• 2.3. Giao thức IPv6
• 2.4. Giao thức TCP
• 2.5. Giao thức UDP
• 2.6. Hệ thống phân giải tên miền
2
2.1. Giới thiệu
• Bộ giao thức Internet
– TCP/IP: Transmission Control Protocol/Internet
Protocol.
– Là bộ giao thức truyền thông được sử dụng trên
Internet và hầu hết các mạng thương mại.
– Được chia thành các tầng gồm nhiều giao thức, thuận
tiện cho việc quản lý và phát triển.
– Là thể hiện đơn giản hóa của mô hình lý thuyết OSI.
3
2.1. Giới thiệu
• Bộ giao thức Internet
– Gồm bốn tầng
• Tầng ứng dụng – Application Layer.
• Tầng giao vận – Transport Layer.
• Tầng Internet – Internet Layer.
• Tầng truy nhập mạng – Network Access Layer.
4
2.1. Giới thiệu
• Bộ giao thức Internet
– Tầng ứng dụng
• Đóng gói dữ liệu người dùng theo giao thức riêng và
chuyển xuống tầng dưới.
• Các giao thức thông dụng: HTTP, FTP, SMTP, POP3,
DNS, SSH, IMAP...
• Việc lập trình mạng sẽ xây dựng ứng dụng tuân theo
một trong các giao thức ở tầng này hoặc giao thức
do người phát triển tự định nghĩa
5
2.1. Giới thiệu
• Bộ giao thức Internet
– Tầng giao vận
• Cung cấp dịch vụ truyền dữ liệu giữa ứng dụng -
ứng dụng.
• Đơn vị dữ liệu là các đoạn (segment,datagram)
• Các giao thức ở tầng này: TCP, UDP, ICMP.
• Việc lập trình mạng sẽ sử dụng dịch vụ do các giao
thức ở tầng này cung cấp để truyền dữ liệu
6
2.1. Giới thiệu
• Bộ giao thức Internet
– Tầng Internet
• Định tuyến và truyền các gói tin liên mạng.
• Cung cấp dịch vụ truyền dữ liệu giữa máy tính –
máy tính trong cùng nhánh mạng hoặc giữa các
nhánh mạng.
• Đơn vị dữ liệu là các gói tin (packet).
• Các giao thức ở tầng này: IPv4, IPv6....
• Việc lập trình ứng dụng mạng sẽ rất ít khi can thiệp
vào tầng này, trừ khi phát triển một giao thức liên
mạng mới.
7
2.1. Giới thiệu
• Bộ giao thức Internet
– Tầng truy nhập mạng
• Cung cấp dịch vụ truyền dữ liệu giữa các nút mạng
trên cùng một nhánh mạng vật lý.
• Đơn vị dữ liệu là các khung (frame).
• Phụ thuộc rất nhiều vào phương tiện kết nối vật lý.
• Các giao thức ở tầng này đa dạng: MAC, LLC, ADSL,
802.11...
• Việc lập trình mạng ở tầng này là xây dựng các trình
điều khiển phần cứng tương ứng, thường do nhà sản
xuất thực hiện.
8
2.1. Giới thiệu
• Bộ giao thức Internet
– Dữ liệu gửi đi qua mỗi tầng sẽ được thêm phần thông
tin điều khiển (header).
– Dữ liệu nhận được qua mỗi tầng sẽ được bóc tách
thông tin điều khiển.
9
2.2. Giao thức IPv4
• Giao thức IPv4
– Được IETF công bố dưới dạng RFC 791 vào 9/1981.
– Phiên bản thứ 4 của họ giao thức IP và là phiên bản
đầu tiên phát hành rộng rãi.
– Là giao thức hướng dữ liệu.
– Sử dụng trong hệ thống chuyển mạch gói.
– Truyền dữ liệu theo kiểu Best-Effort
– Không đảm bảo tính trật tự, trùng lặp, tin cậy của gói
tin.
– Kiểm tra tính toàn vẹn của dữ liệu qua checksum
10
2.2. Giao thức IPv4
• Địa chỉ IPv4
– Sử dụng 32 bit để đánh địa chỉ các máy tính trong
mạng.
– Bao gồm: phần mạng và phần host.
– Số địa chỉ tối đa: 232 ~ 4,294,967,296.
– Dành riêng một vài dải đặc biệt không sử dụng.
– Chia thành bốn nhóm 8 bít (octet).
Dạng biểu diễn
Giá trị
11000000.10101000.00000000.00000001
192.168.0.1
Nhị phân
Thập phân
Thập lục phân
0xC0A80001
11
2.2. Giao thức IPv4
• Các lớp địa chỉ IPv4
– Có năm lớp địa chỉ: A,B,C,D,E.
– Lớp A,B,C: trao đối thông tin thông thường.
– Lớp D: multicast
– Lớp E: để dành
Lớp
A
MSB
0xxx
10xx
110x
1110
1111
Địa chỉ đầu
0.0.0.0
Địa chỉ cuối
127.255.255.255
191.255.255.255
223.255.255.255
239.255.255.255
255.255.255.255
B
128.0.0.0
192.0.0.0
224.0.0.0
240.0.0.0
C
D
E
12
2.2. Giao thức IPv4
• Mặt nạ mạng (Network Mask)
– Phân tách phần mạng và phần host trong địa chỉ IPv4.
– Sử dụng trong bộ định tuyến để tìm đường đi cho gói
tin.
– Với mạng có dạng
Network
192.168.0.
Host
1
11000000.10101000.00000000.
00000001
13
2.2. Giao thức IPv4
• Mặt nạ mạng (Network Mask)
– Biểu diễn theo dạng /n
• n là số bit dành cho phần mạng.
• Thí dụ: 192.168.0.1/24
– Biểu diễn dưới dạng nhị phân
• Dùng 32 bit đánh dấu, bít dành cho phần mạng là 1,
cho phần host là 0.
• Thí dụ: 11111111.11111111.11111111.00000000
hay 255.255.255.0
– Biểu diễn dưới dạng Hexa
• Dùng số Hexa: 0xFFFFFF00
• Ít dùng
15
2.2. Giao thức IPv4
• Số lượng địa chỉ trong mỗi mạng
– Mỗi mạng sẽ có n bit dành cho phần mạng, 32-n bit
dành cho phần host.
– Phân phối địa chỉ trong mỗi mạng:
• 01 địa chỉ mạng (các bit phần host bằng 0).
• 01 địa chỉ quảng bá (các bit phần host bằng 1).
• 2n-2 địa chỉ gán cho các máy trạm (host).
– Với mạng 192.168.0.1/24
• Địa chỉ mạng: 192.168.0.0
• Địa chỉ quảng bá: 192.168.0.255
• Địa chỉ host: 192.168.0.1- 192.168.0.254
16
2.2. Giao thức IPv4
• Các dải địa chỉ đặc biệt
– Là những dải được dùng với mục đích riêng, không sử
dụng được trên Internet.
Địa chỉ
10.0.0.0/8
Diễn giải
Mạng riêng
Địa chỉ loopback
Mạng riêng
Mạng riêng
Multicast
127.0.0.0/8
172.16.0.0/12
192.168.0.0/16
224.0.0.0/4
240.0.0.0/4
Dự trữ
17
2.2. Giao thức IPv4
• Dải địa chỉ cục bộ
– Chỉ sử dụng trong mạng nội bộ.
– Khắc phục vấn đề thiếu địa chỉ của IPv4.
Tên
Dải địa chỉ
Số lượng
16,777,216
1,048,576
Mô tả mạng
Viết gọn
10.0.0.0/8
10.0.0.0–
10.255.255.255
Một dải trọn vẹn
thuộc lớp A
Khối 24-bit
Khối 20-bit
172.16.0.0–
172.31.255.255
Tổ hợp từ mạng
lớp B
172.16.0.0/12
192.168.0.0–
192.168.255.25
5
Tổ hợp từ mạng
lớp C
Khối 16-bit
65,536
18
192.168.0.0/16
2.3. Giao thức IPv6
• Giao thức IPv6
– IETF đề xuất năm 1998.
– Sử dụng 128 bit để đánh địa chỉ các thiết bị.
– Khắc phục vấn đề thiếu địa chỉ của IPv4.
– Vẫn chưa phổ biến và chưa thể thay thế hoàn toàn
IPv4.
19
2.4. Giao thức TCP
• Giao thức TCP: Transmission Control Protocol
– Giao thức lõi chạy ở tầng giao vận.
– Chạy bên dưới tầng ứng dụng và trên nền IP
– Cung cấp dịch vụ truyền dữ liệu theo dòng tin cậy giữa
các ứng dụng.
– Được sử dụng bởi hầu hết các ứng dụng mạng.
– Chia dữ liệu thành các gói nhỏ, thêm thông tin kiểm
soát và gửi đi trên đường truyền.
– Lập trình mạng sẽ sử dụng giao thức này để trao đổi
thông tin.
20
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Lập trình mạng - Chương 2: Bộ giao thức Internet TCP/IP - Trương Đình Huy", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
- bai_giang_lap_trinh_mang_chuong_2_bo_giao_thuc_internet_tcpi.pdf