Professional Documents
Culture Documents
INTERNET
Nội dung
Tại sao phải kết nối mạng lớp
Internetworking?
Khái niệm kết nối mạng và kiến trúc
Internet
Cấu trúc địa chỉ IP, liên hệ giữa địa
chỉ IP, địa chỉ MAC
IP và các giao thức có liên quan
Định tuyến trong Internet
1
Đặt vấn đề
Nhu cầu: kết nối nhiều mạng con với
nhau thành một mạng toàn cầu
Khái niệm
Kết nối nhiều mạng LAN ở lớp MAC
Địa chỉ IP
có khả thi?
Internet
Protocol
Các giao
thức khác
Định tuyến
2
Đặt vấn đề (tiếp…)
Kết luận:
Cần phải có một phân lớp chung độc lập với
các mạng vật lý kết nối mạng lớp
Khái niệm
Internetworking mạng Internet
TCP TCP
Internet
Protocol IP IP IP
3
Yêu cầu thiết kế mạng Internet
(tiếp…)
Internet
Khái niệm
Internet
Protocol DSL
ATM
Ethernet
Các giao
3G/4G …
thức khác
Định tuyến
4
Lịch sử phát triển của Internet
(tiếp…)
1981: NSF quyết định xây dựng mạng CSNET cho nghiên cứu độc
lập với ARPANET. Liên kết giữa ARPANET và CSNET. Host: 213
1983: thành lập Internet Activities Board (IAB). TCP/IP thay thế
hoàn toàn NCP. ĐH Wisconsin đưa ra DNS đầu tiên. Host: 562
1985: NSF thành lập mạng NSFNET, dung lượng: 1,55Mpbs. Host:
Khái niệm 1962
1986: IETF (Internet Engineering Task Force) được thành lập.
Host: 2308
Địa chỉ IP 1990: ngôn ngữ htlm ra đời. Host: 330000
1992: sự ra đời của World Wide Web. Băng thông mạng lõi:
Internet 45Mbps. Host: 2.000.000
Protocol 1993: Mosaic ra đời: web browser đầu tiên với giao diện đồ họa
1996: host: 15.000.000
Các giao 1998: IPv6 được chuẩn hóa bởi IETF
thức khác 1999: 802.11 ra đời
Định tuyến
5
Chức năng chính của lớp
Internetworking
Định tuyến (routing): tìm đường đi
cho một gói tin từ nguồn đến đích
Khái niệm thuật toán vào giao thức định tuyến
Địa chỉ IP
Chuyển tiếp (forwarding): chuyển
một gói tin từ một đầu vào router ra
đầu ra thích hợp bảng chuyển tiếp
Internet
Protocol
Định tuyến
Địa chỉ IP
Địa chỉ IP
IPv4: 32 bit (chương này chỉ xét IPv4)
IPv6: 128 bit
Khái niệm Yêu cầu: phải có cấu trúc, cho phép định tuyến
địa chỉ IP:
Địa chỉ IP Network ID. (địa chỉ mạng)
Host ID. (địa chỉ máy trạm)
Internet Mỗi giao diện mạng có một địa chỉ IP – địa chỉ IP
Protocol
có tính duy nhất
Các giao Cấp phát địa chỉ IP:
thức khác
Tĩnh
Động (TD qua DHCP)
Định tuyến
6
Địa chỉ IP (tiếp…)
Biểu diễn địa chỉ IP
4 byte được biểu diễn bởi 4 chữ số thập
Khái niệm phân có chấm
Địa chỉ IP
X . X . X . X
Định tuyến
7
Địa chỉ IP (tiếp…)
Số máy trạm tối đa trong một mạng:
k=2n – 2
Khái niệm
◊Trong đó: n – số bit của Host ID.
2 địa chỉ còn lại:
Địa chỉ IP ◊Địa chỉ toàn 0 – địa chỉ mạng
– TD: Mạng 171.64.15.0
Internet
Protocol ◊Địa chỉ toàn 1 – địa chỉ quảng bá trong
phạm vi một mạng
Các giao – TD: 171.64.15.255 địa chỉ quảng bá trong
thức khác
phạm vi mạng 171.64.15.0
Định tuyến
8
Địa chỉ IP (tiếp…)
Câu hỏi:
Làm sao phân biệt được địa chỉ mạng
Khái niệm
và địa chỉ máy trạm trong 32 bit địa chỉ
IP?
Địa chỉ IP Phân loại địa chỉ IP:
Internet
Có phân lớp (classful addressing)
Protocol
Không phân lớp (classless addressing):
Các giao ◊Subnetting
thức khác
◊Supernetting (CIDR)
Định tuyến
9
Địa chỉ IP (tiếp…)
# of network # of hosts
Class A 128 2^24
Class B 16384 65536
Khái niệm Class C 2^21 256
Địa chỉ IP
Địa chỉ IP có phân lớp: (tiếp…)
Thí dụ:
Internet ◊ 18.181.0.31 class A
Protocol
◊ 171.64.74.155 class B
Các giao
thức khác
Nhận xét: địa chỉ có phân lớp gây lãng phí
không gian địa chỉ
Định tuyến
Internet
Protocol
Các giao
thức khác
Định tuyến
10
Địa chỉ IP (tiếp…)
Nhận xét: đánh địa chỉ có phân lớp
có một số nhược điểm
Khái niệm Cứng nhắc, lớp C quá nhỏ, lớp B quá
lớn không tận dụng hiệu quả miền
Địa chỉ IP địa chỉ
Các router trong mạng nội bộ cần phải
Internet
Protocol có địa chỉ mạng (network ID.) riêng biệt
cho từng giao diện
Các giao
thức khác Thí dụ: một cơ quan có tổng cộng 300
máy tính tìm cơ chế đánh địa chỉ?
Định tuyến
Địa chỉ IP
2 14 16 2 14 16
10 Net ID 0000 Host-ID 10 Net ID 1111 Host-ID
Subnet
Internet Subnet ID (20) Host ID (12) Subnet ID (20) Subnet
Host ID (12)
Protocol
Các giao
thức khác 14 16 14 16
11
Địa chỉ IP (tiếp…)
Subnetting (tiếp…):
Subnetting thường được biểu diễn bằng địa chỉ
IP kèm theo “mặt nạ mạng” (subnet mask)
Khái niệm Thí dụ:
◊ IP address: 171.64.15.82
◊ Subnet mask: 255.255.255.0
Địa chỉ IP
Subnet mask: 24 bit đầu (3 byte đầu) là địa chỉ
Internet
mạng, 8 bit cuối là địa chỉ máy trạm
Protocol Cách biểu diễn địa chỉ mạng: a.b.c.d/x, trong
đó a.b.c.d là địa chỉ mạng, x là số bit của địa
Các giao chỉ mạng
thức khác
◊ 171.64.15.0/24 mạng có địa chỉ 171.64.15.0 với
phần địa chỉ mạng dài 24 bit
Định tuyến
1 0 1 0 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 0 1 0 0 1 0
Khái niệm
171 64 15 82
• Mặt nạ mạng: 255.255.255.0
Địa chỉ IP
Các bit phần địa chỉ mạng có giá trị 1 0
Internet
Protocol 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0
255 255 255 0
Các giao
thức khác
• Địa chỉ mạng: 171.64.15.0
Địa chỉ mạng (24 bit) Địa chỉ máy (8 bit)
Định tuyến
1 0 1 0 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0
12
Địa chỉ IP (tiếp…)
Subnetting (tiếp…):
Thí dụ: subnetting tại Stanford
◊ Giải thích sơ đồ mạng bên dưới?
Khái niệm
To: cenic.net 171.64.1.131 171.64.74.0/24
hpr1-rtr
171.64.1.132/30
Địa chỉ IP
171.64.1.133
171.64.1.161 171.64.1.178 171.64.74.1
Stanford Class B
Internet Address bbr2-rtr Gates-rtr
Protocol 171.64.74.58
171.64.0.0/16 171.64.1.160/27
AS 32 yuba
Các giao 171.64.1.152
thức khác 171.64.1.144/28
To: cogentco.com
border2-rtr 171.64.1.148
Định tuyến
128.9.0.0
Internet 142.12.0.0/19
Protocol
65.0.0.0/8
128.9.0.0/16
Các giao
thức khác 0 232-1
216
Định tuyến
128.9.17.1
CHƯƠNG 4 – KẾT NỐI MẠNG INTERNET
PGS. TS. Nguyễn Hữu Thanh 26
13
Địa chỉ IP (tiếp…)
Supernetting (tiếp…):
Đường đi đến một địa chỉ IP xác định các router định
tuyến dựa trên nguyên tắc “longest prefix match”
TD: địa chỉ IP 128.9.17.1 thuộc về mạng nào trong các
mạng sau:
◊ 128.9.16.0/20
Khái niệm ◊ 128.9.16.0/21
◊ 128.9.24.0/21
128.9.16.0/21
Địa chỉ IP
128.9.24.0/21
Internet
Protocol 128.9.16.0/20 128.9.176.0/20
Định tuyến
128.9.17.1
CHƯƠNG 4 – KẾT NỐI MẠNG INTERNET
PGS. TS. Nguyễn Hữu Thanh 27
14
Địa chỉ IP (tiếp…)
Supernetting (tiếp…):
Thí dụ: tại bảng định tuyến của R1 /22
Khái niệm
128.9.16.0/22 = 10000000 00001001 00010000 00000000
128.9.20.0/22 = 10000000 00001001 00010100 00000000
Địa chỉ IP 128.9.24.0/22 = 10000000 00001001 00011000 00000000
128.9.28.0/22 = 10000000 00001001 00011100 00000000
Internet 128.9.16.0/20
Protocol
15
Liên hệ giữa địa chỉ MAC và
địa chỉ IP
Trong mạng vật lý,
các trạm trao đổi dữ A 223.1.1.1
liệu thông qua các
khung lớp MAC IP 223.1.2.1
223.1.1.2
datagram được đóng 223.1.1.4 223.1.2.9
Khái niệm gói vào MAC frame
B
A B: 223.1.2.2
A gửi 1 gói IP với địa 223.1.1.3 223.1.3.27 E
Địa chỉ IP chỉ nguồn là IP addr.
của A, đia chỉ đích là 223.1.3.1 223.1.3.2
đia chỉ IP của B
Internet
Protocol Gói IP được đóng
vào một khung MAC
với địa chỉ nguồn là
Các giao A’s MAC addr, địa
thức khác chỉ đích là B’s MAC
addr Làm thế nào để A biết
Thông thường A chỉ địa chỉ MAC của B?
Định tuyến biết địa chỉ IP của B
frame frame IP IP
Địa chỉ IP dest. addr src addr dest. addr src. addr
16
Liên hệ giữa địa chỉ MAC và
địa chỉ IP (tiếp…)
A B: IP: 223.1.1.1
1: A kiểm tra địa chỉ IP của B
nhận ra B nằm trong cùng A MAC: 1A-23-F9-CD-06-9B
một LAN với A
2: A tìm địa chỉ MAC của B IP: 223.1.1.4
trong bảng ARP (tương ứng
với địa chỉ IP của B) MAC: 88-B2-F2-54-1A-0F
MAC: 1A-2B-EF-60-A3-5F
với địa chỉ MAC đích là địa chỉ
quảng bá (FF-FF-FF-FF-FF-FF)
Internet kèm theo địa chỉ IP của máy
cần tìm B
Protocol
5: Các máy trạm trong LAN
nhận được bản tin ARP
IP: 223.1.2.2
request. Chỉ B trả lời bằng bản 6: A nhận được bản tin ARP reply từ
Các giao tin ARP reply tới A có chứa B cập nhật bảng ARP, gửi gói IP
thức khác địa chỉ MAC của B trong khung MAC
Định tuyến
Các giao request. Chỉ R1 trả lời bằng 7: R1 nhận được khung MAC từ
thức khác bản tin ARP reply tới A có A lấy gói IP, tìm chặng tiếp theo
chứa địa chỉ MAC của R1 để gửi gói (LAN2)
6: A nhận được bản tin ARP 8: R1 lại thực hiện cơ chế ARP
reply từ R1 cập nhật bảng trên LAN 2 như các bước 1 - 6
Định tuyến ARP, gửi gói IP trong khung
MAC
17
Liên hệ giữa tên miền và địa
chỉ IP
Tên miền – Domain Name System
Là một hệ thống đặt tên cho máy trạm, dịch vụ, router, các
loại tài nguyên khác nhau trêm mạng
Mục đích: dễ nhớ và thuận tiện
◊ Địa chỉ mạng tên miền (domain name)
Khái niệm
◊ Địa chỉ máy trạm tên máy (host name)
– mail.hut.edu.vn 202.191.57.199
Đặc điểm của DNS:
Địa chỉ IP
◊ Tên máy hoặc tên miền có cấu trúc phân lớp: một tên có thể
thuộc về một tên miền cấp cao hơn
– mail.hut.edu.vn thuộc về hut.edu.vn
Internet
Protocol
◊ Những tên miền hay sử dụng:
– Theo lĩnh vực: .com, .edu, .net, .gov., .org …
– Theo địa lý: .us, .vn, .ru, .au, .de …
Các giao ◊ Tên miền cấp cao nhất được cấp phát bởi ICANN (Internet
thức khác Corporation for Assigned Names and Numbers)
◊ Tên miền .vn được cấp phát bởi VNNIC
◊ Một tên miền sẽ tương ứng với một tổ chức duy nhất
Định tuyến
Internet
Protocol
Các giao
thức khác
Định tuyến
18
Liên hệ giữa tên miền và địa
chỉ IP (tiếp…)
Mô hình truy vấn DNS (tiếp…):
DNS query:
◊ Ứng dụng gửi một DNS query đến DNS
server gần nhất (local DNS server) – TD: fpt.vn
web browser gửi DNS server về địa chỉ IP
của www.wikipedia.org
◊ DNS server kiểm tra, nếu không có thông DNS reply
Khái niệm tin cần tìm thì sẽ chuyển tiếp DNS query (IP address)
đến DNS server cấp cao hơn .v.v.
◊ Khi nhận được DNS reply, ứng dụng lưu
giữ địa chỉ IP trong cache.
Địa chỉ IP
Phương thức gửi bản tin DNS query:
Linux/Unix: host [tên miền]
Internet Windows: nslookup [tên miền] sales.fpt.vn test.fpt.vn rd.fpt.vn
Protocol C/C++: gethostbyname()
TD: host vnexpress.net DNS query (host1.rd.fpt.vn)
Các giao Chú ý: DNS có thể được sử dụng với
thức khác nhiều mục đích – TD: cân bằng tải:
cùng với một DNS query – DNS server
có thể trả lời với các địa chỉ IP khác
Định tuyến nhau
Địa chỉ IP
Internet
Protocol
Các giao
thức khác
Định tuyến
19
NAT (tiếp…)
Phân loại:
Static NAT
Khái niệm
Dynamic NAT
Địa chỉ IP
NPAT: phổ biến nhất hiện nay, khắc
phục được nhược điểm của Dynamic
Internet
Protocol
NAT
Các giao
thức khác
Định tuyến
NAT (tiếp…)
Static NAT: là quá trình ánh xạ 1-1 từ
địa chỉ IP private thành địa chỉ IP public.
Sử dụng khi số lượng IP trong LAN bằng số
lượng NAT-IP.
Khái niệm
Đơn giản.
Địa chỉ IP 200.18.123.15
192.168.1.2
Internet
192.168.1.5 200.18.123.14
Protocol
Định tuyến Trong static NAT, địa chỉ 192.168.1.2 sẽ luôn luôn ánh xạ sang địa chỉ
200.18.123.15
20
NAT (tiếp…)
Dynamic NAT: là quá trình ánh xạ một địa chỉ IP private thành một
địa chỉ IP public từ một dải các địa chỉ IP đã được đăng kí.
Mỗi kết nối từ bên trong muốn ra ngoài sẽ được cung cấp một địa chỉ
trong dải.
Nếu dải địa chỉ này đã được cấp phát hết thì các kết nối sẽ không thể ra
ngoài nữa.
Khái niệm
200.18.123.12 (192.168.1.6)
200.18.123.13 (192.168.1.10)
Địa chỉ IP 200.18.123.14 (192.168.1.5)
200.18.123.15 (192.168.1.2)
192.168.1.2 200.18.123.15
Internet
Protocol
192.168.1.5 200.18.123.14
Các giao
thức khác 192.168.1.6 200.18.123.12
Định tuyến Máy tính với địa chỉ IP 192.168.1.2 sẽ chuyển đổi sang địa chỉ đầu tiên chưa
được sử dụng trong dải địa chỉ public 200.18.123.10 đến 200.18.123.20
NPAT (tiếp…)
NPAT (Network Port Address Translation) các địa chỉ IP trong
mạng LAN được dấu dưới một địa chỉ NAT-IP.
Mỗi gói tin được gửi ra ngoài bằng địa chỉ NAT-IP và port nguồn
được thay thế bằng một cổng nào đó chưa được dùng ở NAT
(thường lớn hơn 1204).
Khái niệm Khi nhận được gói tin, router sẽ kiểm tra địa chỉ IP và port trong
bảng NAT và chuyển nó đến host.
Địa chỉ IP
tiết kiệm địa chỉ IP thực
192.168.1.2 200.18.123.10:1211
Internet
Protocol
192.168.1.5 200.18.123.10:1212
Các giao
thức khác 192.168.1.6 200.18.123.10:1213
Định tuyến Các địa chỉ private đều chuyển thành địa chỉ 200.18.123.10 nhưng với
các port khác nhau
21
NAT (tiếp…)
Công dụng:
Các máy bên trong LAN có thể chia sẻ
Khái niệm kết nối internet với 1 địa chỉ IP duy nhất
của WAN.
Địa chỉ IP
Dấu tất cả các IP bên trong LAN, tránh
Internet sự dòm ngó của các attacker.
Protocol
Tránh được sự chồng chéo địa chỉ IP.
Các giao
thức khác Linh hoạt và sự dễ dàng trong quản lý.
Định tuyến
Internet Protocol
IP:
Version 4 – hiện tại đang được sử dụng rộng rãi
Version 6 – là giao thức của tương lai
Khái niệm Phiên bản IP được thể hiện trong trường “version” của
IP header
Địa chỉ IP
Protocol Stack
Internet
Protocol
App
TCP
Host-to-Host TCP / UDP Data Hdr
Các giao Segment
thức khác
Internetwork IP Data Hdr IP Datagram
22
Internet Protocol (tiếp…)
Tiếp đầu IP (IP header)
IP protocol version 32 bits total datagram
header length head. DSCP length (bytes)
ver length
(bytes) len
fragment for
“type” of data 16-bit identifier flgs fragmentation/
Khái niệm offset
max number time to upper Internet reassembly
remaining hops live layer checksum
Địa chỉ IP (decremented at 32 bit source IP address
each router)
32 bit destination IP address
Internet
upper layer protocol
Protocol to deliver payload to Options (if any) E.g. timestamp,
record route
data taken, pecify
Các giao (variable length, list of routers
thức khác typically a TCP to visit.
or UDP segment)
Định tuyến
23
Phân mảnh gói tin (tiếp…)
Việc ghép mảnh (assemble) chỉ được thực hiện ở
thiết bị đầu cuối
Nên tránh phân mảnh trong mạng thiết bị đầu
Khái niệm cuối có thể ước lượng chiều dài gói nhỏ nhất
(Maximum Transmission Unit - MTU) cho phép
Địa chỉ IP trên đường đi
Bên phát có thể gửi các gói có kích thước khác
Internet nhau, không phân mảnh để tìm path MTU
Protocol
traceroute –F www.hut.edu.vn 1500
Các giao
traceroute –F www.hut.edu.vn 1501
thức khác (DF=1 trong IP header; router gửi bản tin “ICMP lỗi”)
Định tuyến
24
Phân mảnh gói tin (tiếp…)
Thí dụ:
Khái niệm
ID=2356 0 1399 ID=2356
Flag=0.0.0 Flag=0.0.1
Địa chỉ IP Offset=0 Offset = 0/8 = 0
0 1400 2800 3999 1400 2799 ID=2356
Flag=0.0.1
Internet
Offset = 1400/8 = 175
Protocol
2800 3999 ID=2356
Các giao Flag=0.0.0
thức khác Offset = 2800/8 = 350
Định tuyến
25
Các trường khác (tiếp…)
TTL (Time-To-Live): 8 bit – “thời gian sống”
Độ dài đường đi gói tin có thể đi qua
Max: 255
Khái niệm Router giảm TTL đi 1 đơn vị khi nhận và chuyển tiếp gói
tin
Gói tin bị hủy nếu TTL bằng 0
Địa chỉ IP
Protocol: 8 bit – cho biết các giao thức được đóng
Internet
gói vào IP datagram:
Protocol Giao thức tầng host-to-host: TCP (6), EGP (8), IGP (9),
UDP (17), OSPF (89), SCTP (132)
Các giao
thức khác
Giao thức tầng internetworking: ICMP (1), IGMP (2), IP
(IP in IP) (4)
Định tuyến
Định tuyến
26
ICMP
ICMP – Internet Control Message Protocol
RFC 792
ICMP được sử dụng ở tầng mạng để trao đổi thông tin
Báo lỗi: báo gói tin không đến được một máy trạm, số
chặng vượt quá giới hạn cho phép (TTL=0), kích thước
Khái niệm gói tin quá dài .v.v.
Thông tin phản hồi
Định dạng bản tin ICMP: Type, Code, cùng với 8 bytes đầu
Địa chỉ IP tiên của gói tin IP bị lỗi
Internet
Type Code Checksum
Protocol
Rest of the header
Các giao
thức khác
Data
Định tuyến
ICMP (tiếp…)
Một số dạng bản tin ICMP:
Type Code description
0 0 echo reply (ping)
3 0 dest. network unreachable
Khái niệm 3 1 dest host unreachable
3 2 dest protocol unreachable
3 3 dest port unreachable
Địa chỉ IP
3 6 dest network unknown
3 7 dest host unknown
Internet 4 0 source quench (congestion
Protocol control - not used)
8 0 echo request (ping)
Các giao 9 0 route advertisement
thức khác
10 0 router discovery
11 0 TTL expired
Định tuyến 12 0 bad IP header
27
ICMP (tiếp…)
Ping:
Sử dụng để kiểm tra kết nối
Khái niệm
Gửi gói tin “ICMP echo request”
Bên nhận trả về “ICMP echo reply”
Địa chỉ IP Mỗi gói tin có một số hiệu gói tin
Trường dữ liệu chứa thời gian gửi gói tin
Internet
Protocol ◊ Tính được thời gian đi và về - RTT (round-trip time)
Các giao
Cú pháp: ping [địa chỉ IP/tên host]
thức khác ◊ ping www.google.com
Định tuyến
ICMP (tiếp…)
Traceroute
Tìm đường đi (các router trung gian) từ nguồn tới đích
Cú pháp:
◊ Linux: traceroute [địa chỉ IP/tên host]
◊ Windows: tracert [địa chỉ IP/tên host]
Khái niệm C:\Documents and Settings\tnh>tracert www.jaist.ac.jp
28
ICMP (tiếp…)
Traceroute (tiếp…):
Bên gửi truyền gói tin cho bên nhận
◊ Gói thứ nhất có TTL =1
◊ Gói thứ 2 có TTL=2, …
Khi gói tin thứ n đến router thứ n:
Khái niệm
◊ Router hủy gói tin
◊ gửi một gói tin ICMP (type 11, code 0)
Địa chỉ IP ◊ có chứa tên và địa chỉ IP của router
khi nhận được gói tin trả lời, bên gửi sẽ tính ra RTT
Internet Khi nguồn nhận được gói tin ICMP này sẽ dừng lại
Protocol
Mỗi gói tin lặp lại 3 lần
Các giao
thức khác 3 probes 3 probes
Định tuyến
3 probes
Khái niệm
Địa chỉ IP
Internet
Protocol
Các giao
thức khác
Định tuyến
Nguồn: http://www.lumeta.com
29
Tổng quan về định tuyến
(tiếp…)
“Bản đồ Internet” 2006:
Khái niệm
Địa chỉ IP
Internet
Protocol
Các giao
thức khác
Định tuyến
Nguồn: http://www.lumeta.com
Khái niệm
Địa chỉ IP
Internet
Protocol
Các giao
thức khác
Định tuyến
30
Tổng quan về định tuyến (tiếp…)
Phân bố các bản ghi
100000
Number of entries
80000
Khái niệm
60000
Địa chỉ IP
40000
20000
Internet
Protocol 0
Các giao
8
12
16
20
24
thức khác
Prefix length (bits)
Định tuyến
Khái niệm
R2
Địa chỉ IP
R3
Internet
Protocol
R1
Các giao
thức khác
R1 chọn chặng tiếp R4
theo đi đến B ntn?
Định tuyến
31
Tổng quan về định tuyến
(tiếp…)
Bảng định tuyến (routing table) :
Bảng định tuyến nằm trong các router
Khái niệm
Cho phép với một địa chỉ mạng đích thì phải
gửi gói tin ra giao diện mạng nào của router
Địa chỉ IP Bảng định tuyến được tạo ra do các router trao
đổi bản tin định tuyến thông qua các giao thức
Internet định tuyến (routing protocols)
Protocol
Nguyên lý định tuyến của router: “longest
Các giao
thức khác
prefix match”
Định tuyến
Internet
Protocol Router A Router B Router C
10.0.0.0/24 1 2 172.16.0.0/24
Các giao
thức khác 3
32
Tổng quan về định tuyến (tiếp…)
Mục tiêu:
Tìm đường đi ngắn nhất từ một nút gốc tới các nút
còn lại xây dựng cây theo đường ngắn nhất
(shortest path tree - SPT)
Các thuật toán xây dựng cây SPT:
Khái niệm ◊ Thuật toán Bellman-Ford distance vector routing
(RIP, IGRP)
◊ Thuật toán Dijkstra link state routing (OSPF)
Địa chỉ IP
Câu hỏi:
Sự khác nhau giữa cây bắc cầu tối thiểu (Minimum
Internet Spanning Tree) và cây theo đường ngắn nhất?
Protocol
Tại sao nguyên tắc định tuyến trong Internet lại tuân
theo cây SPT?
Các giao
thức khác Chú ý:
Xem lại môn “Cơ sở truyền số liệu” để hiểu chi tiết về
lý thuyết định tuyến
Định tuyến
Định tuyến
33
Tổng quan về định tuyến (tiếp…)
Cho R8 là nút gốc, tìm đường đi ngắn
nhất từ R8 đến các nút còn lại
Khái niệm
Địa chỉ IP
R1 1 1 4
R2 R4 R6
Internet 2 2 3
Protocol 2
R7 3
R5 2
Các giao
thức khác
R3 4 R8
Định tuyến
Định tuyến
34
Thuật toán Bellman-Ford phân
tán (tiếp…) n=1
R1 1 1 4
R2 R4 R6
2 2 3
2
R7 3
Khái niệm R5 2
R3 4 R8
Địa chỉ IP 0
n=2
R1 Inf
R1 1 1 4
Internet
Protocol R2 Inf R2 R4 R6 2
R3 4, R8 2 2 3
Các giao
2
R4 Inf
R7 3
thức khác
R5
R5 2 3
2, R8
R3 4 2 R8
R6 2, R8
Định tuyến
R7 3, R8 4 0
35
Thuật toán Bellman-Ford phân tán (tiếp…)
Nhận xét:
Các bản tin DS được gửi theo chu kỳ, không
phụ thuộc vào trạng thái đường truyền
Khái niệm
Các vấn đề:
Địa chỉ IP Số bước lặp của thuật toán? (thuật toán sẽ
chạy bao lâu)
Internet
Protocol Thuật toán có luôn hội tụ hay không (n< )?
Các giao
Điều gì sẽ xảy ra khi một nút/liên kết bị hỏng
thức khác hoặc khi khoảng cách thay đổi?
Định tuyến
Địa chỉ IP
Bước lặp R1 R2 R3
0 3,R2 2,R3 1, R4 R3 R4 hỏng
Internet
Protocol 1 3,R2 2,R3 3,R2
Các giao 2 3,R2 4,R3 3,R2
thức khác
3 5,R2 4,R3 5,R2
Định tuyến … …
“Counting …infinity” …
to
36
Thuật toán Bellman-Ford phân tán (tiếp…)
Định tuyến
37
Thuật toán Dijkstra (tiếp…)
Cơ chế quảng bá trong Dijkstra:
Gói tin trạng thái liên kết (Link State Packet - LSP)
bao gồm:
◊ ID của router Ri gửi bản tin LSP
◊ Danh sách các hàng xóm của Ri cùng với khoảng cách
Khái niệm tương ứng từ Ri
◊ Số thứ tự
◊ TTL
Địa chỉ IP Khi router Rj nhận được bản tin LSP:
◊ Nếu số thứ tự chỉ ra bản tin mới nhất gửi LSP trên tất
Internet
các các giao diện còn lại (quảng bá)
Protocol ◊ Nếu không hủy gói tin
Các router gửi bản tin “hello” đến các nút hàng xóm
Các giao nhận biết được trạng thái kênh truyền
thức khác Xây dựng cây SPT:
Dựa trên bản tin LSA các router tự xây dựng cây
Định tuyến SPT dựa trên thuật toán Dijkstra
Khái niệm
2 R8,R5,R6 4,R5 4,R8 6,R6 - - 3,R8
Định tuyến
38
Thuật toán Dijkstra (tiếp…)
n=0 R8 n=1 R5 2
0 R8
0
R6
Khái niệm
n=2 R6
2 n=3
R5 2 2
Địa chỉ IP
2 R7 3
R8 R5
0 R8
Internet 0
Protocol
R1 1 1
Các giao
R2 R4 R6
thức khác 2
2
n=7
R5 2 R7 3
Định tuyến R3 4 R8
So sánh
39
So sánh (tiếp…)
Bản tin định tuyến:
Kích thước:
◊ DV: lớn (gửi toàn bộ thông tin về kết nối từ 1
router tới tất cả các router khác)
Khái niệm ◊ LS: nhỏ (chỉ có thông tin từ 1 router tới các router
hàng xóm của nó)
Địa chỉ IP
Số lượng bản tin trao đổi
◊ DV: ít (chỉ gửi đến các nút hàng xóm)
Internet ◊ LS: nhiều (quảng bá tới toàn mạng)
Protocol
Lượng thông tin cần lưu tại router:
Các giao DV: chỉ lưu giữ trạng thái các router hàng
thức khác
xóm
Định tuyến
LS: lưu giữ đồ hình toàn mạng
So sánh (tiếp…)
Độ ổn định:
DV: 1 router có thể gửi các bản tin với khoảng cách
không đúng tới các hàng xóm lan ra toàn mạng
LS: 1 router có thể quảng bá các bản tin LSA không
Khái niệm đúng/lỗi cho toàn mạng
◊ Tuy nhiên các router khác vẫn có thể xây dựng được đồ
hình mạng dựa vào các bản tin LSA tới từ các router khác
Địa chỉ IP
Thời gian hội tụ:
DV: các bản tin DV được gửi có chu kỳ, không phụ
Internet thuộc vào trạng thái đường truyền thời gian hội tụ
Protocol lâu, ngoài ra có thể tạo vòng lặp (routing loop) (nhớ lại
giải pháp split horizon!)
Các giao LS: các bản tin LSA được gửi chỉ khi trạng thái đường
thức khác truyền thay đổi thời gian hội tụ nhanh hơn
Định tuyến
40
Định tuyến trong mạng
Internet
Internet thực hiện định tuyến có phân
tầng (hierarchical routing):
Khái niệm
Internet được phân thành các hệ tự trị - AS
(Autonomous System)
Địa chỉ IP Mỗi AS do được quản trị riêng biệt bởi các
quản trị mạng
Internet
Protocol
Trong một AS: sử dụng một giao thức định
tuyến nội miền (interior gateway protocol)
Các giao
thức khác Giữa các AS: sử dụng giao thức định tuyến liên
miền (exterior gateway protocol)
Định tuyến
3a
Khái niệm
2a
1c
Địa chỉ IP
1b
3c
3a 2c
Internet 3b 2a
AS3 2b
Protocol 1c AS2
1a 1b
Các giao
1d AS1
thức khác
41
EGP và IGP
AS2
EGP
Địa chỉ IP RIP domain EGP
EGP
Internet AS4 EGP IGP
Protocol IGP RIP domain
AS3
IGP
Các giao OSPF domain
thức khác RIP domain AS5
Hệ tự trị
Mỗi hệ tự trị có một số hiệu riêng – AS
number (ASN - 16 bits hay 32 bits)
Khái niệm
Định tuyến
42
Hệ tự trị (tiếp…)
ASN được cấp phát bởi IANA (Internet
Assigned Numbers Authority)
Khái niệm
Source: http://www.potaroo.net/
Địa chỉ IP
Internet
Protocol
Các giao
thức khác
2008
Định tuyến
43
RIP
Đặc điểm:
RIP – Routing Information Protocol
Là giao thức định tuyến theo vector khoảng
Khái niệm
cách – sử dụng thuật toán Bellman-Ford phân
tán
Địa chỉ IP
Được phát triển lần đầu dưới hệ điều hành
BSD Unix năm 1982
Internet
Protocol Trước đây được sử dụng rộng rãi, hiện nay ít
được sử dụng
Các giao
thức khác Khoảng cách là số chặng tới mạng đích
Số chặng tối đa: 15 chặng
Định tuyến
RIP (tiếp…)
Trao đổi thông tin:
Định kỳ
◊ Các vector khoảng cách được trao đổi định kỳ - 30s
◊ Mỗi thông điệp chứa tối đa 25 mục
◊ Trong thực tế, nhiều thông điệp được sử dụng
Sự kiện
Khái niệm ◊ Gửi thông điệp cho nút hàng xóm mỗi khi có thay đổi
◊ Nút hàng xóm sẽ cập nhật bảng chọn đường của nó
Các bộ đếm thời gian:
Địa chỉ IP Update timer
◊ Dùng để trao đổi thông tin cứ 30s
Invalid timer
Internet ◊ Khởi tạo lại mỗi khi nhận được thông tin chọn đường
Protocol ◊ Nếu sau 180s không nhận được thông tin -> trạng thái hold-down
Hold down timer
Các giao ◊ Giữ trạng thái hold-down trong 180s
thức khác ◊ Chuyển sang trạng thái down
Flush timer
◊ Khởi tạo lại mỗi khi nhận được thông tin chọn đường
Định tuyến ◊ Sau 240s, xóa mục tương ứng trong bảng chọn đường
44
RIP (tiếp…)
no
update update
update
↓ ↓ ↓
When it is timeout,
hold down timer starts
Invalid timer
Khái niệm When it is timeout,
This info will be deleted
from RIP database
Internet
Protocol
Flush timer
Các giao
thức khác When it is timeout,
Routing info will be deleted
from routing table
Định tuyến 0 30 60 90 120 150 180 210 240 270 300 330 360 390 420
RIP (tiếp…)
RIP
RIPv1: chỉ hỗ trợ định tuyến trong các mạng
đánh địa chỉ IP có phân lớp (classful)
Khái niệm
◊ Bản tin cập nhật: thông tin mạng đích, khoảng cách
tới mạng đích
Địa chỉ IP
RIPv2: hỗ trợ định tuyến trong cả mạng đánh
Internet địa chỉ không phân lớp (classless)
Protocol
◊ Bản tin cập nhật: thông tin mạng đích, subnet mask
của mạng đích, khoảng cách tới mạng đích
Các giao
thức khác
Định tuyến
45
OSPF
Đặc điểm:
OSPF – Open Shortest Path First
Thông tin về trạng thái liên kết - LSA (link
Khái niệm
state advertisement) được quảng bá trên toàn
AS
Địa chỉ IP
Với các AS lớn: OSPF được phân cấp thành
nhiều miền OSPF nhỏ
Internet
Protocol Các router sử dụng thuật toán Dijkstra để thiết
lập bảng định tuyến
Các giao
thức khác Khoảng cách (giá): 100Mbps/dung lượng kênh
Định tuyến
OSPF (tiếp…)
Phân vùng trong OSPF:
Trong việc chọn đường, tại sao phải
Khái niệm
chia mạng thành các vùng nhỏ hơn?
Nếu có quá nhiều router
Địa chỉ IP ◊Thông tin trạng thái liên kết được truyền
nhiều lần hơn
Internet
Protocol
◊Phải liên tục tính toán lại
◊Cần nhiều bộ nhớ hơn, nhiều tài nguyên
Các giao
thức khác
CPU hơn
◊Lượng thông tin phải trao đổi tăng lên
Định tuyến ◊Bảng chọn đường lớn hơn
46
OSPF (tiếp…)
boundary router
Gb
Area border router backbone router
Ga
Khái niệm
Backbone Gc
Địa chỉ IP 3c
2c
Internet 3a
Protocol 3b 1c 2a
AS3 2b
AS2
Các giao
1a 1b
thức khác
1d AS1
Định tuyến
internal router
OSPF (tiếp…)
ABR - Area border routers: Quản lý 1 vùng
và kết nối đến các vùng khác
Khái niệm ASBR - Autonomous system boundary
router: Nối đến các AS khác
Địa chỉ IP
BR - backbone routers: thực hiện OSPF
Internet routing trong vùng backbone
Protocol
Internal Router – Thực hiện OSPF bên
Các giao
thức khác
trong một vùng
Định tuyến
47
RIP và OSPF – So sánh
RIP OSPF
48
Quan hệ khách hàng – nhà
cung cấp
Khách hàng (customer) – Nhà cung cấp (provider)
Khách hàng trả tiền cho nhà cung cấp Internet để được
truy nhập vào mạng
Khái niệm
Internet
Protocol
provider customer IP traffic
Các giao
thức khác
customer
Định tuyến
Khái niệm
Địa chỉ IP
Internet
Protocol
Các giao
thức khác
49
Quan hệ khách hàng – nhà
cung cấp (tiếp…)
Khái niệm
Địa chỉ IP
Internet
Protocol
peer peer -Lưu lượng thường được trao đổi giữa
provider customer
các AS theo quan hệ provider –
Các giao customer
thức khác - Các AS cùng cấp không mong muốn
traffic traffic NOT trao đổi lưu lượng (khi không có hợp
đồng trao đổi lưu lượng)
Định tuyến
allowed allowed
BGP
Đặc điểm:
Không sử dụng phương thức vector khoảng
cách và trạng thái kênh truyền sử dụng
Khái niệm
vector đường dẫn (path vector)
◊ Cho phép một AS biết được thông tin đi đến AS khác
◊ BGP trao đổi các bản tin path vector: AS_PATH
Địa chỉ IP
Gửi thông tin này vào bên trong AS đó
Internet
Xác định đường đi tốt nhất dựa trên thông tin
Protocol đó và các chính sách chọn đường
Cho phép thiết lập các chính sách
Các giao ◊ Chọn đường ra
thức khác
◊ Quảng bá các đường vào
Định tuyến
50
BGP (tiếp…)
eBGP và iBGP:
External BGP vs. Internal BGP
Phân tán thông tin chọn đường
Khái niệm 1. 3a gửi tới 1c bằng eBGP
2. 1c gửi thông tin nội bộ tới (1b, 1d, …) trong AS1 bằng iBGP
3. 2a nhận thông tin từ 1b bằng eBGP
Địa chỉ IP
eBGP session
Internet 3c iBGP session
Protocol 2c
3a
3b 2a
Các giao AS3 2b
thức khác 1c AS2
1a 1b
Định tuyến AS1 1d
BGP (tiếp…)
Áp dụng chính sách định tuyến với
BGP:
Khái niệm Khi các router gửi và nhận thông tin
chọn đường:
Địa chỉ IP
◊BGP có thể đặt các chính sách
Internet – Cho đường vào
Protocol
– Cho đường ra
Các giao
thức khác
Định tuyến
51
BGP (tiếp…)
Các bản tin BGP:
Open: Thiết lập một phiên BGP giữa 2
Khái niệm
router.
Địa chỉ IP Keep Alive: Bắt tay theo chu kỳ.
Internet Notification: Hủy bỏ phiên BGP sau khi
Protocol
trao đổi thông tin.
Các giao
thức khác Update: cập nhật các tuyến mới hoặc
Định tuyến hủy bỏ các tuyến cũ
CHƯƠNG 4 – KẾT NỐI MẠNG INTERNET
PGS. TS. Nguyễn Hữu Thanh
103
BGP (tiếp…)
Bản tin cập nhật: chứa các thuộc tính của tuyến
Thuộc tính của tuyến: được sử dụng để chọn
đường tối ưu khi có nhiều tuyến cùng đi đến một
Khái niệm đích
ORIGIN
Địa chỉ IP ◊ Nguồn của thông tin (IGP/EGP/incomplete)
AS_PATH
Internet NEXT_HOP
Protocol MED (MULTI_EXIT_DISCRIMINATOR)
LOCAL_PREF
Các giao
thức khác ATOMIC_AGGREGATE
AGGREGATOR
Định tuyến COMMUNITY
52
BGP (tiếp…)
Các mức ưu tiên khi chọn tuyến
Enforce relationships
Highest Local Preference E.g. prefer customer routes
Khái niệm over peer routes
BGP (tiếp…)
135.207.0.0/16
AS 1129
AS Path = 1755 1239 7018 6341
Global Access
AS 1755
135.207.0.0/16 135.207.0.0/16
AS Path = 1239 7018 6341 Ebone AS Path = 1129 1755 1239 7018 6341
Khái niệm
AS 12654
AS 1239 RIPE NCC
Địa chỉ IP
135.207.0.0/16 Pick shorter RIS project
AS Path = 7018 6341
Sprint AS path
53
Các giao thức định tuyến
Các giao thức định tuyến được thực
hiện ở lớp mấy?
Khái niệm
BGP và RIP được truyền tải qua TCP (lớp
ứng dụng)
Địa chỉ IP
◊RIP:
– UDP port: 520
Internet
◊BGP:
Protocol – TCP port: 179
Các giao
OSPF được truyền tải trực tiếp trong gói tin
thức khác IP
◊Protocol type: 89
Định tuyến
54
Các thuật toán tìm bản ghi
trong bảng định tuyến (tiếp…)
Đặt vấn đề:
Số bản ghi trong bảng định tuyến trong mạng
lõi Internet tăng theo hàm mũ
Khái niệm Phân bố chiều dài của network prefix (CIDR)
thay đổi bất kỳ
Địa chỉ IP
Internet
Protocol
Các giao
thức khác
Định tuyến Số bản ghi trong router lõi Phân bố độ dài network prefix trong
(Nguồn: http://www.cidr-report.org/) router lõi
Định tuyến
55
Các thuật toán tìm bản ghi trong
bảng định tuyến (tiếp…)
Yêu cầu:
Các bản ghi trong bản định tuyến phải được sắp
xếp sao cho:
◊ Cập nhật các bản ghi (table entry) nhanh và dễ dàng
Khái niệm
◊ Tốc độ tìm kiếm nhanh (table lookup)
◊ Kích thước bộ nhớ chứa bảng định tuyến nhỏ
Địa chỉ IP ◊ Thích hợp với cơ chế đánh địa chỉ không phân lớp
(classless addressing - CIDR) “longest prefix match”
Internet
Gọi:
Protocol W: Độ dài của địa chỉ IP
◊ IPv4: W=32
Các giao
thức khác
N: Số bit địa chỉ mạng (prefix)
◊ Trong CIDR: N thay đổi
Định tuyến
Internet
Protocol
Các giao
thức khác
Định tuyến
56
Thí dụ
Xét bảng định tuyến:
dest. network (bin.)/subnet mask next hop
a: 0/1 …
b: 01000/5 …
Khái niệm c: 011/3 …
d: 1/1 …
e: 100/3 …
Địa chỉ IP
f: 1100/4 …
g: 1101/4 …
Internet h: 1110/4 …
Protocol i: 1111/4 …
Thí dụ (tiếp…)
Giải đáp:
P1 = 010011110 a
Khái niệm
P2 = 111000110 h
Địa chỉ IP
Internet
Protocol
Các giao
thức khác
Định tuyến
57
Binary Trie
a: 0 0
1 P1 = 010011110
b: 01000
(1)
c: 011
a (0) d 1
0
1
d: 1
0
e: 100 0
1
f: 1100 0
1 e (100)
0 1
Khái niệm 1
g: 1101 0
c (011)
(1100) f g (1101)
h: 1110 0
h h
i: 1111
Địa chỉ IP (1110) (1111)
0
Internet
(01000) b
Protocol
Nút mức L thể hiện chiều dài L bit
Các prefix trong bảng định tuyến được đánh dấu bằng nút màu thẫm
Các giao
Thuật toán tìm kiếm:
thức khác Đi theo cây nhị phân theo nhánh phù hợp
Ghi nhớ nút prefix vừa đi qua (a)
Đi cho tới khi không gặp nút phù hợp nữa thì dừng prefix cuối cùng đi qua là bản
Định tuyến ghi thích hợp
Địa chỉ IP
Internet
Protocol
Các giao
thức khác
Định tuyến
58
Bài tập
Bài tập 1:
Cho bảng định tuyến tại router R1
R1 sẽ gửi gói đến mạng nào khi nhận được các gói tin
có địa chỉ đích như sau:
◊ 192.138.32.1
◊ 192.138.32.100
59
Bài tập (tiếp…)
Bài tập 3:
Cho một mạng cục bộ thuộc công ty A
được phân địa chỉ 220.130.15.0. Mạng
này được chia thành 7 mạng nhỏ:
◊Mạng thứ nhất và 2 có 62 host.
◊Mạng thứ 3 và 4 có 30 host
◊Mạng thứ 5, 6, 7 mỗi mạng có 14 host
Hãy thiết kế mạng này.
60