Two-level hierarchy: local area, backbone.
Link-state advertisements only in area
each nodes has detailed area topology; only know direction
(shortest path) to nets in other areas.
Area border routers: “summarize” distances to nets in own area,
advertise to other Area Border routers.
Backbone routers: run OSPF routing limited to backbone.
39 trang |
Chia sẻ: nguyenlam99 | Lượt xem: 2029 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Quản trị mạng - Chương 4: Giao thức tầng mạng (network layer), để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Chương 4.
Giao thức tầng mạng (network layer)
Trần Quang Hải Bằng
Faculty of Information Technology
University of Communication and Transport (Branch 2)
Office location: Administration building, Block D3, Room 6
Office phone: 38962018
Cell phone: N/A
Email: tqhbang@utc2.edu.vn
Chương 4. Giao thức tầng mạng 223/08 - 10/10/2010
Ch4. The Network Layer
4.1 - Giới thiệu và chức năng của tầng mạng.
4.2 - Network service model (VC and Datagram).
4.3 - Thiết bị tầng mạng - Bộ định tuyến (router).
4.4 - Giao thức IP (Internet Protocol).
4.5 - Giải thuật chọn đường (Routing Algorithms).
4.6 - Chọn đường trong mạng Internet.
Chương 4. Giao thức tầng mạng 323/08 - 10/10/2010
Chức năng của tầng mạng
Truyền các gói tin (packets) từ sending
host tới receiving host.
segment packets (datagrams).
Network layer được cài đặt tại router
và cả end system.
Chức năng:
chọn đường (path selection): có nhiều
đường đi, gói tin sẽ đi theo đường nào?
chuyển mạch (switching, forwarding):
chuyển gói tin từ cổng vào tới cổng ra của
router một cách thích hợp.
thiết lập liên kết (call setup): một số kiến
trúc mạng cần thiết lập kênh truyền trước
khi truyền.
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
application
transport
network
data link
physical
application
transport
network
data link
physical
Chương 4. Giao thức tầng mạng 423/08 - 10/10/2010
Routing & switching in routers
1
23
0111
value in arriving
packet’s header
routing algorithm
local forwarding table
header value output link
0100
0101
0111
1001
3
2
2
1
Chương 4. Giao thức tầng mạng 523/08 - 10/10/2010
Ch4. The Network Layer
4.1 - Giới thiệu và chức năng của tầng mạng.
4.2 - Network service model (VC and Datagram).
4.3 - Thiết bị tầng mạng - Bộ định tuyến (router).
4.4 - Giao thức IP (Internet Protocol).
4.5 - Giải thuật chọn đường (Routing Algorithms).
4.6 - Chọn đường trong mạng Internet.
Chương 4. Giao thức tầng mạng 623/08 - 10/10/2010
Network service model
Tầng mạng cung cấp dịch vụ cho tầng Transport:
tin cậy vào tầng network?
các gói tin có đến đích đúng thứ tự đã gửi?
thời gian truyền có được đảm bảo?
có phản hồi về tình trạng nghẽn mạng?
Hai model cơ bản của tầng mạng:
kênh ảo (virtual circuit)
lược đồ (gam) dữ liệu (datagram)
Chương 4. Giao thức tầng mạng 723/08 - 10/10/2010
Virtual Circuit
Thiết lập liên kết trước khi truyền dữ liệu và huỷ bỏ liên
kết sau khi truyền xong.
VC setup: trước khi truyền, tầng mạng phải thiết lập một kênh
truyền ảo (VC) từ sender tới receiver (đã biết địa chỉ).
Data transfer: dữ liệu được truyền qua VC.
VC teardown: một khi sender hoặc receiver muốn ngắt VC, nó
thông báo cho network layer biết, network layer sẽ huỷ bỏ VC.
Còn được gọi là connection-oriented
Mỗi gói tin chứa thêm thông tin về kênh mà nó sẽ đi qua
(VC identifier number).
Các routers/packet switches trên kênh ảo (VC) luôn nắm
giữ trạng thái của kênh đi qua nó.
Chương 4. Giao thức tầng mạng 823/08 - 10/10/2010
Virtual Circuit: Signaling protocol
Giao thức truyền các thông điệp giữa end system và
network layer để yêu cầu thiết lập, huỷ bỏ VC; giữa các
thiết bị chuyển mạch (switches) để thiết lập VC.
Được sử dụng trong mạng ATM, Frame Relay, X.25.
application
transport
network
data link
physical
application
transport
network
data link
physical
1. Initiate call 2. incoming call
3. Accept call4. Call connected
5. Data flow begins 6. Receive data
Chương 4. Giao thức tầng mạng 923/08 - 10/10/2010
Sự khác biệt giữa liên kết tại tầng Transport và Network?
host A server B
application
transport
network
data link
physical
application
transport
network
data link
physical
application
transport
network
data link
physical
application
transport
network
data link
physical
Chương 4. Giao thức tầng mạng 1023/08 - 10/10/2010
Datagram network
Không thiết lập kênh truyền.
Các thiết bị chuyển mạch không cần nắm giữ trạng thái các
kênh.
Gói tin được truyền dựa trên địa chỉ của receiving host.
Đường đi của các gói tin giữa hai host có thể khác nhau.
application
transport
network
data link
physical
application
transport
network
data link
physical
1. Send data 2. Receive data
Chương 4. Giao thức tầng mạng 1123/08 - 10/10/2010
Network taxonomy (review)
circuit-switched
networks
(vd. telephone)
communication
networks
switched
networks
broadcast
networks
(vd. Radio,
Broadcast TV)
packet-switched
networks
datagram
networks
(vd. Internet)
virtual circuit-
switched
networks
(vd. ATM)
FDM TDM
Chương 4. Giao thức tầng mạng 1223/08 - 10/10/2010
Datagram or VC network: why?
Internet
Mạng máy tính:
dịch vụ nhạy cảm.
không giới hạn thời gian.
Các hệ thống cuối “thông minh”
(computer):
có khả năng thích nghi, kiểm
soát, khôi phục lỗi.
kiến trúc bên trong mạng đơn
giản nhưng kết nối các mạng
phức tạp.
Nhiều dạng liên kết mạng dẫn đến
một dịch vụ thuần nhất (kênh) là
không thích hợp.
ATM
Mạng điện thoại (chuyển mạch kênh).
Tương tác người-người đòi hỏi:
thời gian truyền.
độ tin cậy.
dịch vụ phải được đảm bảo.
Các thiết bị cuối đơn giản, dường như
cố định:
điện thoại.
mức độ phức tạp nằm bên trong
mạng.
Chương 4. Giao thức tầng mạng 1323/08 - 10/10/2010
Ch4. The Network Layer
4.1 - Giới thiệu và chức năng của tầng mạng.
4.2 - Network service model (VC and Datagram).
4.3 - Thiết bị tầng mạng - Bộ định tuyến (router).
4.4 - Giao thức IP (Internet Protocol).
4.5 - Giải thuật chọn đường (Routing Algorithms).
4.6 - Chọn đường trong mạng Internet.
Chương 4. Giao thức tầng mạng 1423/08 - 10/10/2010
Bộ định tuyến – router
Thực thi các giải thuật chọn đường (routing algorithms).
Chuyển tiếp (forwarding) các gói tin từ cổng vào tới cổng
ra thích hợp.
Chương 4. Giao thức tầng mạng 1523/08 - 10/10/2010
Input ports
Decentralized switching:
sử dụng forwarding table có trong input
port memory để tra cứu output port
queuing: nếu các gam dữ liệu
(datagram) đến nhanh quá, cần phải xếp
hàng chờ xử lý.
Physical layer:
bit-level reception
Data link layer:
e.g., Ethernet
Chương 4. Giao thức tầng mạng 1623/08 - 10/10/2010
Các cơ cấu chuyển mạch (switching fabrics)
Chương 4. Giao thức tầng mạng 1723/08 - 10/10/2010
Output ports
Buffering: khi datagram được gửi ra nhanh hơn tốc độ xử
lý, cần đưa vào bộ đệm.
Scheduling discipline: cơ chế lựa chọn datagram từ bộ đệm
để tiếp tục gửi đi.
Chương 4. Giao thức tầng mạng 1823/08 - 10/10/2010
Ch4. The Network Layer
4.1 - Giới thiệu và chức năng của tầng mạng.
4.2 - Network service model (VC and Datagram).
4.3 - Thiết bị tầng mạng - Bộ định tuyến (router).
4.4 - Giao thức IP (Internet Protocol).
4.5 - Giải thuật chọn đường (Routing Algorithms).
4.6 - Chọn đường trong mạng Internet.
Chương 4. Giao thức tầng mạng 1923/08 - 10/10/2010
The Internet (TCP/IP) network layer
routing
table
Network layer được thực thi tại end system cũng như tại router!
Routing protocols
•path selection
•RIP, OSPF, BGP
IP protocol
•addressing conventions
•datagram format
•packet handling conventions
ICMP protocol
•error reporting
•router “signaling”
Transport layer: TCP, UDP
Link layer
physical layer
Network
layer
Chương 4. Giao thức tầng mạng 2023/08 - 10/10/2010
IP datagram format
ver length
32 bits
data
(variable length,
typically a TCP
or UDP segment)
16-bit identifier
Internet
checksum
time to
live
32 bit source IP address
IP protocol version
number
header length
(bytes)
max number
remaining hops
(decremented at
each router)
for
fragmentation/
reassembly
total datagram
length (bytes)
upper layer protocol
to deliver payload to
6 = TCP; 17 = UDP
head.
len
type of
service
“type” of data flgs
fragment
offset
upper
layer
32 bit destination IP address
Options (if any) E.g. timestamp,
record route
taken, specify
list of routers
to visit.
Chương 4. Giao thức tầng mạng 2123/08 - 10/10/2010
IP datagram - example
Receiver’s MAC address
Sender’s MAC address
Type of upper layer’s protocol
( 0x0800 = IP )
Chương 4. Giao thức tầng mạng 2223/08 - 10/10/2010
IP’s HeaderIP version: 4
Header length: 20 bytes
TOSTotal length:
72 bytes
Id
Flags & Fragment’s offset
TTL Transport’s protocol: UDP Checksum Source’s IP: 192.168.1.10
Chương 4. Giao thức tầng mạng 2323/08 - 10/10/2010
IP’s Header
Dest’s IP: 203.162.4.190
Chương 4. Giao thức tầng mạng 2423/08 - 10/10/2010
Phân tích gói tin tầng Internet - Transport
Địa chỉ MAC của sender & receiver ?
Địa chỉ IP của sender và receiver ?
Độ dài tổng của IP datagram ?
TTL của IP datagram?
Source’s IP, destination’s IP ?
Giao thức sử dụng ở tầng Application ?
What are your
answers ?
Chương 4. Giao thức tầng mạng 2523/08 - 10/10/2010
IP Fragmentation & Reassembly
Fragmentation: gam dữ liệu
(datagram) lớn được chia
thành nhiều gam dữ liệu
nhỏ.
Do mỗi đường truyền giữa
các nút (link) có tốc độ giới
hạn, chỉ cho phép truyền đơn
vị dữ liệu có kích thước tối đa
là MTU (Max Transfer Unit)
Reassembly: Các gam dữ
liệu nhỏ được hợp nhất
thành gam dữ liệu lớn
(ngược lại) tại điểm đến
cuối cùng
fragmentation:
in: one large datagram
out: 3 smaller datagrams
reassembly
Chương 4. Giao thức tầng mạng 2623/08 - 10/10/2010
ID
=x
offset
=0
fragflag
=0
length
=4000
ID
=x
offset
=0
fragflag
=1
length
=1500
ID
=x
offset
=185
fragflag
=1
length
=1500
ID
=x
offset
=370
fragflag
=0
length
=1040
gam dữ liệu lớn được chia thành
nhiều gam dữ liệu nhỏ hơn
Example
4000 byte datagram
MTU = 1500 bytes
1480 bytes in
data field
offset =
1480/8
Chương 4. Giao thức tầng mạng 2723/08 - 10/10/2010
IPv4 Addressing: introduction
IP address: Số 32-bit định danh giao diện mạng (interface).
Interface (NIC - Network Interface Card): giao diện kết nối mạng
từ nút mạng tới mạng.
host interface: mỗi máy tính thường có một NIC, cho phép nối vào một đường
liên kết.
router interface: router thường có nhiều giao diện mạng.
223.1.1.1
223.1.1.2
223.1.1.3
223.1.1.4 223.1.2.9
223.1.2.2
223.1.2.1
223.1.3.2223.1.3.1
223.1.3.27
223.1.1.1 = 11011111 00000001 00000001 00000001
223 1 11
32-bit = 4 số 8-bit dạng thập phân dễ nhớ:
Chương 4. Giao thức tầng mạng 2823/08 - 10/10/2010
Mạng & mạng con (subnet)
Internet = network of networks.
Địa chỉ IP bao gồm 2 phần:
Các bit cao dành cho network.
Các bit thấp dành cho host.
Network:
Mạng tạo bởi các interface có
phần network trong IP addr
giống nhau.
Các host cùng network có thể
trao đổi dữ liệu không cần
thông qua router.
223.1.1.1
223.1.1.2
223.1.1.3
223.1.1.4 223.1.2.9
223.1.2.2
223.1.2.1
223.1.3.2223.1.3.1
223.1.3.27
network = 3 IP networks
LAN
Chương 4. Giao thức tầng mạng 2923/08 - 10/10/2010
IP addressing: Class-full
Chương 4. Giao thức tầng mạng 3023/08 - 10/10/2010
Subnet
Đôi khi cần chia nhỏ một mạng thành các mạng
nhỏ hơn (subnet)
Ví dụ:
Chương 4. Giao thức tầng mạng 3123/08 - 10/10/2010
Subnet mask
Một interface trong mạng cần có:
IP address
Mặt nạ mạng con (subnet mask):
Là một số 32 bit bao gồm các bit cao = 1 và các bit thấp = 0. Các bit 1
quy định subnet, các bit 0 quy định địa chỉ host.
từ subnet mask có thể xác định ranh giới giữa địa chỉ mạng và địa chỉ của
interface (host).
Ví dụ: Subnet gồm các host 192.168.10.x, một host có thể
có thông số như sau:
IP = 192.168.10.1
SM = 255.255.255.0
(111111111.11111111.11111111.00000000)
Kiểm tra xem hai IP có cùng một subnet không?
(IP1 XOR IP2) AND SM = 0?
Chương 4. Giao thức tầng mạng 3223/08 - 10/10/2010
Network addr, Broadcast và loopback
Để ám chỉ một mạng, thay địa chỉ host bằng các bit
0, ví dụ: 192.168.10.0
Broadcast:
Địa chỉ host thay bằng các bit 1, vd: 192.168.10.255
Các gói tin có ip đích dạng broadcast sẽ được gửi cho
mọi host trong mạng.
Loopback ip: 127.x.x.x
các gói tin được coi như được gửi tới từ nút khác.
thường dùng 127.0.0.1
Chương 4. Giao thức tầng mạng 3323/08 - 10/10/2010
IP addressing: CIDR
Class-full addressing: sự phân lớp cứng nhắc,
không còn thích hợp nữa.
CIDR (Classless InterDomain Routing):
Vị trí ngăn cách giữa net addr và host addr tuỳ ý.
addr format: a.b.c.d/x, với x là số lượng bit dành cho net
addr.
11001000 00010111 00010000 00000000
network
part
host
part
200.23.16.0/23
Chương 4. Giao thức tầng mạng 3423/08 - 10/10/2010
IP addresses: how to get one?
Làm thế nào để có địa chỉ IP cho host?
Người quản trị hệ thống thiết lập (TCP/IP properties trong
Windows 2000/XP).
RARP (Reverse Address Resolution Protocol):
RARP server cung cấp IP cho client dựa trên bảng cấu hình sẵn có (từ địa
chỉ vật lý (MAC) IP).
BOOTP (BOOTstrap Protocol):
BOOTP server cung cấp IP cho client dựa trên bảng cấu hình sẵn có.
DHCP (Dynamic Host Configuration Protocol):
Giao thức cấp phát địa chỉ IP động.
DHCP server phụ trách việc cấp phát/thu hồi IP cho/từ các DHCP client.
Client có thể nhận IP khác nhau tuỳ thời điểm kết nối.
Chương 4. Giao thức tầng mạng 3523/08 - 10/10/2010
Phân cấp địa chỉ Internet - ISP
“Send me anything
with addresses
beginning
200.23.16.0/20”
200.23.16.0/23
200.23.18.0/23
200.23.30.0/23
Fly-By-Night-ISP
Organization 0
Organization 7
Internet
Organization 1
ISPs-R-Us
“Send me anything
with addresses
beginning
199.31.0.0/16”
200.23.20.0/23
Organization 2
...
...
ISP's block 11001000 00010111 00010000 00000000 200.23.16.0/20
Organization 0 11001000 00010111 00010000 00000000 200.23.16.0/23
Organization 1 11001000 00010111 00010010 00000000 200.23.18.0/23
Organization 2 11001000 00010111 00010100 00000000 200.23.20.0/23
... *.. *. *.
Organization 7 11001000 00010111 00011110 00000000 200.23.30.0/23
ICANN: Internet
Corporation for
Assigned Names
and Numbers
Chương 4. Giao thức tầng mạng 3623/08 - 10/10/2010
NAT: Network Address Translation
10.0.0.1
10.0.0.2
10.0.0.3
10.0.0.4
138.76.29.7
local network
(e.g., home network)
10.0.0/24
rest of
Internet
Datagrams with source or
destination in this network
have 10.0.0/24 address for
source, destination (as usual)
All datagrams leaving local
network have same single source
NAT IP address: 138.76.29.7,
different source port numbers
Chương 4. Giao thức tầng mạng 3723/08 - 10/10/2010
NAT: Network Address Translation (cont)
Một LAN chỉ sử dụng một IP duy nhất khi giao
tiếp với mạng ngoài.
Từ đó:
Không cần tìm dải IP từ ISP để cấp phát cho các thiết bị
mạng trong (máy trạm) vì chỉ dùng 1 IP.
Thay đổi IP của máy trạm nội bộ mà không ảnh hưởng
tới mạng ngoài.
Thay đổi ISP mà không cần thay đổi địa chỉ các thiết bị
mạng trong.
Các thiết bị mạng trong không “nhìn thấy” được từ
mạng ngoài.
Chương 4. Giao thức tầng mạng 3823/08 - 10/10/2010
NAT: Implementation
NAT router:
outgoing datagrams: replace (source IP address, port #) of every
outgoing datagram to (NAT IP address, new port #)
. . . remote clients/servers will respond using (NAT IP address, new
port #) as destination addr.
remember (in NAT translation table) every (source IP address, port
#) to (NAT IP address, new port #) translation pair
incoming datagrams: replace (NAT IP address, new port #) in dest
fields of every incoming datagram with corresponding (source IP
address, port #) stored in NAT table
Chương 4. Giao thức tầng mạng 3923/08 - 10/10/2010
NAT example
10.0.0.1
10.0.0.2
10.0.0.3
S: 10.0.0.1, 3345
D: 128.119.40.186, 80
1
10.0.0.4
138.76.29.7
1: host 10.0.0.1
sends datagram to
128.119.40, 80
NAT translation table
WAN side addr LAN side addr
138.76.29.7, 5001 10.0.0.1, 3345
S: 128.119.40.186, 80
D: 10.0.0.1, 3345 4
S: 138.76.29.7, 5001
D: 128.119.40.186, 802
2: NAT router
changes datagram
source addr from
10.0.0.1, 3345 to
138.76.29.7, 5001,
updates table
S: 128.119.40.186, 80
D: 138.76.29.7, 5001 3
3: Reply arrives
dest. address:
138.76.29.7, 5001
4: NAT router
changes datagram
dest addr from
138.76.29.7, 5001 to 10.0.0.1, 3345
Chương 4. Giao thức tầng mạng 4023/08 - 10/10/2010
ICMP (Internet Control Message Protocol)
Giao tiếp ở mức mạng giữa các
hosts, routers
thông báo lỗi (vd: không tìm được
đường đi, không gửi tin được tới
host, port).
echo request/reply.
ICMP có thể coi là một thành
phần của IP
về mặt kiến trúc, ICMP thuộc về
tầng ứng dụng.
sử dụng UDP.
ICMP msg
được đóng gói trong IP
datagrams/packet.
type + code + 8 bytes of IP
datagram.
Type Code description
0 0 echo reply (ping)
3 0 dest. network unreachable
3 1 dest host unreachable
3 2 dest protocol unreachable
3 3 dest port unreachable
3 6 dest network unknown
3 7 dest host unknown
4 0 source quench (congestion
control - not used)
8 0 echo request (ping)
9 0 route advertisement
10 0 router discovery
11 0 TTL expired
12 0 bad IP header
Chương 4. Giao thức tầng mạng 4123/08 - 10/10/2010
IPv6
IPv4: sử dụng 32-bit địa chỉ IP sẽ là không đủ???
IPv6:
sử dụng 128-bit địa chỉ.
phần tiêu đề (header) cung cấp khả năng xử lý nhanh
hơn, chất lượng hơn (QoS).
40 bytes header.
không cho phép phân mảnh (fragmentation).
ICMP v6. [RFC 1885]
Chương 4. Giao thức tầng mạng 4223/08 - 10/10/2010
IPv6: datagram format
ver: phiên bản (6=v6, 4#v4!!).
priority: thứ tự các gói tin
trong cùng flow.
flow: nhãn của luồng mà gói
tin thuộc về
các ứng dụng đòi hỏi chất lượng
cao flow.
ứng dụng không đòi hỏi chất
lượng không được coi là flow.
next header: giao thức tầng
trên.
Chương 4. Giao thức tầng mạng 4323/08 - 10/10/2010
IPv6 datagram analysis (example)
0000: 00 A0 24 6F B6 A3 00 A0 24 6F B7 02 86 DD 60 00 ..$o....$o....`.
0010: 00 00 00 CB 06 40 5F 15 50 00 82 C0 0E 00 00 BD .....@_.P.......
0020: 00 A0 24 6F B7 02 5F 15 50 00 82 C0 0E 00 00 BD ..$o.._.P.......
0030: 00 A0 24 6F B6 A3 23 3F 04 06 63 A9 BC 4A 1E 41 ..$o..#?..c..J.A
0040: B0 80 80 18 43 80 74 8A 00 00 01 01 08 0A 00 0A ....C.t.........
0050: 96 D9 00 00 14 D5 4C 61 73 74 20 6C 6F 67 69 6E ......Last login
0060: 3A 20 54 75 65 20 4A 61 6E 20 20 37 20 31 37 3A : Tue Jan 7 17:
0070: 30 33 3A 34 36 20 66 72 6F 6D 20 61 6C 69 63 65 03:46 from alice
0080: 2D 76 36 2E 69 70 76 36 0D 0A 57 61 72 6E 69 6E -v6.ipv6..Warnin
0090: 67 3A 20 6E 6F 20 4B 65 72 62 65 72 6F 73 20 74 g: no Kerberos t
00A0: 69 63 6B 65 74 73 20 69 73 73 75 65 64 2E 0D 0A ickets issued...
00B0: 4F 70 65 6E 42 53 44 20 31 2E 32 20 28 49 50 4E OpenBSD 1.2 (IPN
00C0: 47 4B 45 52 29 20 23 31 3A 20 46 72 69 20 4E 6F GKER) #1: Fri No
00D0: 76 20 31 35 20 30 38 3A 30 33 3A 34 32 20 50 53 v 15 08:03:42 PS
00E0: 54 20 31 39 39 36 0D 0A 0D 0A 57 65 6C 63 6F 6D T 1996....Welcom
00F0: 65 20 74 6F 20 4F 70 65 6E 42 53 44 2E 0D 0A 0D e to OpenBSD....
0100: 0A A3 5F 44 A9 .._D.
Receiver’s MAC Sender’s MAC Type: 0x86DD (IPv6)
Chương 4. Giao thức tầng mạng 4423/08 - 10/10/2010
IPv6 datagram analysis (example) cnt.
0000: 00 A0 24 6F B6 A3 00 A0 24 6F B7 02 86 DD 60 00 ..$o....$o....`.
0010: 00 00 00 CB 06 40 5F 15 50 00 82 C0 0E 00 00 BD .....@_.P.......
0020: 00 A0 24 6F B7 02 5F 15 50 00 82 C0 0E 00 00 BD ..$o.._.P.......
0030: 00 A0 24 6F B6 A3 23 3F 04 06 63 A9 BC 4A 1E 41 ..$o..#?..c..J.A
0040: B0 80 80 18 43 80 74 8A 00 00 01 01 08 0A 00 0A ....C.t.........
0050: 96 D9 00 00 14 D5 4C 61 73 74 20 6C 6F 67 69 6E ......Last login
0060: 3A 20 54 75 65 20 4A 61 6E 20 20 37 20 31 37 3A : Tue Jan 7 17:
0070: 30 33 3A 34 36 20 66 72 6F 6D 20 61 6C 69 63 65 03:46 from alice
0080: 2D 76 36 2E 69 70 76 36 0D 0A 57 61 72 6E 69 6E -v6.ipv6..Warnin
0090: 67 3A 20 6E 6F 20 4B 65 72 62 65 72 6F 73 20 74 g: no Kerberos t
00A0: 69 63 6B 65 74 73 20 69 73 73 75 65 64 2E 0D 0A ickets issued...
00B0: 4F 70 65 6E 42 53 44 20 31 2E 32 20 28 49 50 4E OpenBSD 1.2 (IPN
00C0: 47 4B 45 52 29 20 23 31 3A 20 46 72 69 20 4E 6F GKER) #1: Fri No
00D0: 76 20 31 35 20 30 38 3A 30 33 3A 34 32 20 50 53 v 15 08:03:42 PS
00E0: 54 20 31 39 39 36 0D 0A 0D 0A 57 65 6C 63 6F 6D T 1996....Welcom
00F0: 65 20 74 6F 20 4F 70 65 6E 42 53 44 2E 0D 0A 0D e to OpenBSD....
0100: 0A A3 5F 44 A9 .._D.
TCP at upper layer
Payload length: 203 (bytes)
Flow label
Hops Limit: 64
Chương 4. Giao thức tầng mạng 4523/08 - 10/10/2010
IPv6 – Analysis (example 2)
0000: 33 33 00 00 00 09 08 00 2B B5 A7 A8 86 DD 67 00 33......+.....g.
0010: 00 00 00 20 11 FF FE 80 00 00 00 00 00 00 00 00 ... ............
0020: 08 00 2B B5 A7 A8 FF 02 00 00 00 00 00 00 00 00 ..+.............
0030: 00 00 00 00 00 09 02 09 02 09 00 20 21 A1 01 01 ........... !...
0040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0050: 00 00 00 00 00 10 F2 9B F3 73
Địa chỉ IPv6 của máy gửi và máy nhận ?
Payload length của IPv6 datagram ?
Hops limit value ?
Transport protocol ?
Source port # and Dest port # at transport layer ?
What are your
answers ?
Chương 4. Giao thức tầng mạng 4623/08 - 10/10/2010
IPv6: chuyển đổi IPv4 IPv6
Chuyển đổi tất cả các hosts, routers sang sử dụng
IPv6: không thể!!!
Chuyển đổi dần dần:
tồn tại các nút mạng IPv4 và IPv6.
IPv6 có khả năng xử lý gói tin IPv4.
Tunneling: gói tin IPv6 được coi như phần data
(payload) của IPv4 khi đi qua các nút mạng IPv4.
Chương 4. Giao thức tầng mạng 4723/08 - 10/10/2010
Tunneling
A B E F
IPv6 IPv6 IPv6 IPv6
tunnelLogical view:
Physical view:
A B E F
IPv6 IPv6 IPv6 IPv6
C D
IPv4 IPv4
Flow: X
Src: A
Dest: F
data
Flow: X
Src: A
Dest: F
data
Flow: X
Src: A
Dest: F
data
Src:B
Dest: E
Flow: X
Src: A
Dest: F
data
Src:B
Dest: E
A-to-B:
IPv6
E-to-F:
IPv6
B-to-C:
IPv6 inside
IPv4
B-to-C:
IPv6 inside
IPv4
Chương 4. Giao thức tầng mạng 4823/08 - 10/10/2010
Ch4. The Network Layer
4.1 - Giới thiệu và chức năng của tầng mạng.
4.2 - Network service model (VC and Datagram).
4.3 - Thiết bị tầng mạng - Bộ định tuyến (router).
4.4 - Giao thức IP (Internet Protocol).
4.5 - Giải thuật chọn đường (Routing Algorithms).
4.6 - Chọn đường trong mạng Internet.
Chương 4. Giao thức tầng mạng 4923/08 - 10/10/2010
Forwarding & routing
1
23
0111
value in arriving
packet’s header
routing algorithm
local forwarding table
header value output link
0100
0101
0111
1001
3
2
2
1
Chương 4. Giao thức tầng mạng 5023/08 - 10/10/2010
Network: graph abstraction
Network = Graph = G(N,E).
N = tập hợp các routers = { u, v, w, x, y, z }.
E = tập các đường nối giữa các routers.
= { (u,v), (u,x), (v,x), (v,w), (x,w), (x,y), (w,y), (w,z), (y,z) }
Trọng số = chi phí (cost): độ trễ, độ nghẽn mạng, cước
phí
Đường đi tốt = đường đi có “chi phí” thấp nhất.
u
yx
wv
z
2
2
1
3
1
1
2
5
3
5
Chương 4. Giao thức tầng mạng 5123/08 - 10/10/2010
Routing Algorithm classification
Thông tin tập trung hay phân tán?
Tập trung:
mỗi router phải nắm giữ thông tin toàn
bộ mạng (topology, link cost)
“link state” algorithms
Phân tán:
router nắm được chi phí truyền tin tới các
router được nối trực tiếp với mình (hàng
xóm)
quá trình tính toán mang tính chất lặp đi
lặp lại, trao đổi thông tin giữa các
routers.
“distance vector” algorithms
Tĩnh hay động?
Tĩnh:
đường đi ít thay đổi
Động:
đường đi thay đổi
thường xuyên
các thông tin dẫn
đường được cập
nhật định kỳ.
link cost thay đổi.
Chương 4. Giao thức tầng mạng 5223/08 - 10/10/2010
A Link-State Routing Algorithm
Giải thuật Dijkstra:
tất cả các nút mạng có thông tin như nhau về các liên kết của toàn
bộ mạng.
cho phép tìm đường đi từ một nút tới tất cả các nút còn lại.
Ký hiệu:
c(i,j): chi phí phải trả để đi từ i tới j (trực tiếp)
D(v): giá trị hiện tại của chi phí phải trả để đi từ đỉnh xuất phát
tới đỉnh v.
p(v): đỉnh trước đỉnh v trên đường đi ngắn nhất
N: tập hợp đỉnh mà đường đi ngắn nhất đã được xác định.
Chương 4. Giao thức tầng mạng 5323/08 - 10/10/2010
Dijsktra’s Algorithm
1 Initialization:
2 N = {A}
3 for all nodes v
4 if v kề với A
5 then D(v) = c(A,v)
6 else D(v) = ∞
7
8 Loop
9 Tìm w không thuộc N sao cho D(w) nhỏ nhất
10 N = N + w
11 for all v kề với w và không thuộc N:
12 D(v) = min( D(v), D(w) + c(w,v) )
13 until tất cả nút thuộc N
Chương 4. Giao thức tầng mạng 5423/08 - 10/10/2010
Dijkstra’s algorithm: example
Step
0
1
2
3
4
5
N
A
AD
ADE
ADEB
ADEBC
ADEBCF
D(B),p(B)
2,A
2,A
2,A
D(C),p(C)
5,A
4,D
3,E
3,E
D(D),p(D)
1,A
D(E),p(E)
∞
2,D
D(F),p(F)
∞
∞
4,E
4,E
4,E
A
ED
CB
F
2
2
1
3
1
1
2
5
3
5
Chương 4. Giao thức tầng mạng 5523/08 - 10/10/2010
Distance Vector Routing Algorithm
Distance Table data structure
mỗi nút mạng có một bảng khoảng cách.
hàng dành cho các đích có thể đến được.
cột dành cho các nút có thể đến trực tiếp (hàng xóm)
Ví dụ: tại nút X, với đích Y đến qua nút Z:
D (Y,Z)
X
chi phí cho đường đi (XZ*Y)
Z là nút kế tiếp cần đi tới
c(X,Z) + min {D (Y,w)}
Z
w
=
=
Chương 4. Giao thức tầng mạng 5623/08 - 10/10/2010
Distance Table: example
A
E D
CB
7
8
1
2
1
2
D ()
A
B
C
D
A
1
7
6
4
B
14
8
9
11
D
5
5
4
2
E
cost to destination via
d
e
st
i n
a
tio
n
D (C,D)
E
c(E,D) + min {D (C,w)}
D
w=
= 2+2 = 4
D (A,D)
E
c(E,D) + min {D (A,w)}
D
w=
= 2+3 = 5
D (A,B)
E
c(E,B) + min {D (A,w)}
B
w=
= 8+6 = 14
loop!
loop!
Chương 4. Giao thức tầng mạng 5723/08 - 10/10/2010
Distance table routing table
D ()
A
B
C
D
A
1
7
6
4
B
14
8
9
11
D
5
5
4
2
E
cost to destination via
d
e
st
i n
a
tio
n
A
B
C
D
A,1
D,5
D,4
D,4
Outgoing link
to use, cost
d
e
st
i n
a
tio
n
Distance table Routing table
Chương 4. Giao thức tầng mạng 5823/08 - 10/10/2010
DV Algorithm: Initialization
1 Initialization:
2 for all adjacent nodes v:
3 D (*,v) = infinity /* the * operator means "for all rows" */
4 D (v,v) = c(X,v)
5 for all destinations, y
6 send min D (y,w) to each neighbor /* w over all X's neighbors */
X
X
X
w
At all nodes, X:
Chương 4. Giao thức tầng mạng 5923/08 - 10/10/2010
DV Algorithm: Loop
8 loop
9 wait (until I see a link cost change to neighbor V
10 or until I receive update from neighbor V)
11
12 if (c(X,V) changes by d)
13 /* change cost to all dest's via neighbor v by d */
14 /* note: d could be positive or negative */
15 for all destinations y: D (y,V) = D (y,V) + d
16
17 else if (update received from V wrt destination Y)
18 /* shortest path from V to some Y has changed */
19 /* V has sent a new value for its min DV(Y,w) */
20 /* call this received new value is "newval" */
21 for the single destination y: D (Y,V) = c(X,V) + newval
22
23 if we have a new min D (Y,w)for any destination Y
24 send new value of min D (Y,w) to all neighbors
26 forever
w
XX
X
X
X
w
w
Chương 4. Giao thức tầng mạng 6023/08 - 10/10/2010
DV Algorithm: example
X Z
12
7
Y
D (Y,Z)
X
c(X,Z) + min {D (Y,w)}
w=
= 7+1 = 8
Z
D (Z,Y)
X
c(X,Y) + min {D (Z,w)}
w=
= 2+1 = 3
Y
Chương 4. Giao thức tầng mạng 6123/08 - 10/10/2010
DV Algorithm: example
X Z
12
7
Y
Chương 4. Giao thức tầng mạng 6223/08 - 10/10/2010
Một vài so sánh (LS và DV)
Link-State
Cần nắm được thông tin toàn
bộ mạng
n nút, E links, nE msgs được
gửi mỗi lần
O(n2), nE msgs
Mỗi nút chỉ tính toán bảng dẫn
đường cho riêng mình.
Distance Vector
Chỉ nắm giữ thông tin liên
quan tới các nút “hàng xóm”
msgs chỉ được gửi cho các nút
“hàng xóm”.
tốc độ hội tụ có thể khác nhau
tuỳ từng tình huống, đôi khi rơi
vào trạng thái lặp vô hạn.
Thông tin dẫn đường của nút
này được sử dụng bởi nút khác.
Một nút gặp sự cố có thể gây ảnh
hưởng tới các nút khác.
Chương 4. Giao thức tầng mạng 6323/08 - 10/10/2010
Hierarchical Routing
Dẫn đường theo từng mức mạng, do:
Quy mô mạng Internet là rất lớn:
một nút không thể chứa tất cả các bản ghi cho mọi đích!
việc cập nhật bảng dẫn đường tốn kém!
Nhu cầu mạng tự trị
Internet = network of networks
người quản trị mạng muốn điều khiển việc dẫn đường
(routing) trong mạng họ quản lý.
Chương 4. Giao thức tầng mạng 6423/08 - 10/10/2010
Hierarchical Routing (cont)
Phân vùng routers, tạo thành các “autonomous systems”
(AS)
routers trong cùng AS sử dụng chung giao thức tìm đường,
gọi là “intra-AS” routing protocol.
routers tại các AS khác nhau có thể sử dụng intra-AS routing
protocol khác nhau.
Gateway router:
router đặc biệt trong AS
sử dụng intra-AS routing protocol với các routers khác trong AS
sử dụng inter-AS routing protocol với các gateway
routers khác.
Chương 4. Giao thức tầng mạng 6523/08 - 10/10/2010
Hierarchical Routing (cont)
Gateways:
•perform inter-AS
routing amongst
themselves
•perform intra-AS
routers with other
routers in their
AS
inter-AS, intra-AS
routing in
gateway A.c
network layer
link layer
physical layer
a
b
b
a
aC
A
B
d
A.a
A.c
C.b
B.a
c
b
c
Chương 4. Giao thức tầng mạng 6623/08 - 10/10/2010
Hierarchical Routing (cont)
Host
h2
a
b
b
a
aC
A
B
d c
A.a
A.c
C.b
B.a
c
b
Host
h1
Intra-AS routing
within AS A
Inter-AS
routing
between
A and B
Intra-AS routing
within AS B
Chương 4. Giao thức tầng mạng 6723/08 - 10/10/2010
Ch4. The Network Layer
4.1 - Giới thiệu và chức năng của tầng mạng.
4.2 - Network service model (VC and Datagram).
4.3 - Thiết bị tầng mạng - Bộ định tuyến (router).
4.4 - Giao thức IP (Internet Protocol).
4.5 - Giải thuật chọn đường (Routing Algorithms).
4.6 - Chọn đường trong mạng Internet.
Chương 4. Giao thức tầng mạng 6823/08 - 10/10/2010
Routing in the Internet
Internet = nhiều Autonomous Systems (AS) :
Stub AS: các công ty nhỏ: một kết nối với AS khác.
Multihomed AS: công ty lớn: nhiều liên kết tới AS
khác.
Transit AS: nhà cung cấp (móc nối các AS với nhau).
Two-level routing:
Intra-AS: người quản trị có quyền chọn giải thuật cho
riêng mạng của mình
Inter-AS: giải thuật duy nhất (inter-AS routing: BGP)
Chương 4. Giao thức tầng mạng 6923/08 - 10/10/2010
Internet AS Hierarchy
Inter-AS border (exterior gateway) routers
Intra-AS interior (gateway) routers
Chương 4. Giao thức tầng mạng 7023/08 - 10/10/2010
Intra-AS Routing
Tên gọi khác: Interior Gateway Protocols (IGP)
Các giao thức chính:
RIP: Routing Information Protocol
OSPF: Open Shortest Path First
IGRP: Interior Gateway Routing Protocol (Cisco
proprietary)
Chương 4. Giao thức tầng mạng 7123/08 - 10/10/2010
RIP ( Routing Information Protocol)
Sử dụng Distance vector algorithm
Included in BSD-UNIX Distribution in 1982
Đơn vị đo khoảng cách: số lượng chặng (hop, tối đa = 15 hops)
Routing table được trao đổi 30 giây một lần thông qua RIP response
msg (RIP advertisement), mỗi msg chứa tối đa 25 bản ghi.
v1: RFC 1058; v2: RFC 1723
DC
BA
u v
w
x
y
z
destination hops
u 1
v 2
w 2
x 3
y 3
z 2
Chương 4. Giao thức tầng mạng 7223/08 - 10/10/2010
RIP: Example
Destination Network Next Router Num. of hops to dest.
w A 2
y B 2
z B 7
x -- 1
. . ....
w x y
z
A
C
D B
Routing table in D
Chương 4. Giao thức tầng mạng 7323/08 - 10/10/2010
RIP Table processing
RIP routing tables managed by application-level
process called route-d (daemon)
advertisements được gửi định kỳ, qua UDP
packets.
Chương 4. Giao thức tầng mạng 7423/08 - 10/10/2010
RIP Table example
Three attached class C networks (LANs)
Router only knows routes to attached LANs
Default router used to “go up”
Route multicast address: 224.0.0.0
Loopback interface (for debugging)
Destination Gateway Flags Ref Use Interface
-------------------- -------------------- ----- ----- ------ ---------
127.0.0.1 127.0.0.1 UH 0 26492 lo0
192.168.2. 192.168.2.5 U 2 13 fa0
193.55.114. 193.55.114.6 U 3 58503 le0
192.168.3. 192.168.3.5 U 2 25 qaa0
224.0.0.0 193.55.114.6 U 3 0 le0
default 193.55.114.129 UG 0 143454
Chương 4. Giao thức tầng mạng 7523/08 - 10/10/2010
OSPF (Open Shortest Path First)
“open”: publicly available; RFC 2178
Uses Link State algorithm
LS packet dissemination
Topology map at each node
Route computation using Dijkstra’s algorithm
OSPF advertisement carries one entry per neighbor router
Advertisements disseminated to entire AS (via flooding)
Carried in OSPF messages directly over IP (rather than TCP or
UDP
Chương 4. Giao thức tầng mạng 7623/08 - 10/10/2010
OSPF “advanced” features (not in RIP)
Security: các OSPF msgs đều chứa thông tin chứng thực
(authenticated).
Multiple same-cost paths: Cho phép truyền tin theo nhiều
đường có cùng chi phí với cùng một phiên truyền tin.
Diff. cost metrics for diff. TOS: Cho phép nhiều đơn vị đo
khác nhau cho từng loại dịch vụ (e.g., satellite link cost set
“low” for best effort; high for real time)
Integrated unicast and multicast support:
Multicast OSPF (MOSPF) uses same topology data
base as OSPF
Hierarchical OSPF in large domains.
Chương 4. Giao thức tầng mạng 7723/08 - 10/10/2010
Hierarchical OSPF
Two-level hierarchy: local area, backbone.
Link-state advertisements only in area
each nodes has detailed area topology; only know direction
(shortest path) to nets in other areas.
Area border routers: “summarize” distances to nets in own area,
advertise to other Area Border routers.
Backbone routers: run OSPF routing limited to backbone.
Boundary routers: connect to other AS’s.
Chương 4. Giao thức tầng mạng 7823/08 - 10/10/2010
Internet inter-AS routing: BGP
BGP (Border Gateway Protocol): RFC 1771; RFC
1772; RFC 1773
AS2
(OSPF
intra-AS
routing)
AS1
(RIP intra-AS
routing) BGP
AS3
(OSPF intra-AS
routing)
BGP
R1 R2
R3
R4
R5
Các file đính kèm theo tài liệu này:
- tran_quang_hai_bangmangmt_internet_ch4_3204.pdf