End system βPhysical layer Data link layer Physical layer Data link layer End system α Network layer Network layer Physical layer Data link layer Network layer Physical layer Data link
Trang 1Bài giảng Mạng Viễn thông (33BB)
Trần Xuân Nam Khoa Vô tuyến Điện tư Học viện Kỹ thuật Quân sự
Trang 2Routing in Packet Networks
Shortest Path Routing
Trang 4Network Layer
Network Layer: Lớp phức tạp nhất
Yêu cầu các điều phối của các phần tử mạng phân tán theo địa lý (switches & routers)
Cần phải làm việc với phạm vi rất rộng
Hàng tỉ người dùng (người & thiết bị liên lạc)
Các thách thức lớn nhất
Addressing: thông tin cần chuyển tới đâu?
Routing: sử dụng đường nào để đưa thông tin tới đích?
Trang 5t0 t1
Network
Packet Switching
Truyền thông tin ở dạng một gói đơn hay nhiều gói nho
Truyền gói đơn yêu cầu về độ chính xác và trễ truyền
Truyền nhiều gói nho, ngoài yêu cầu độ chính xác, trễ truyền còn yêu cầu thêm về thứ tự các gói và đảm bảo quan hệ thời gian giữa các gói nho
Trang 6End system β
Physical layer
Data link layer
Physical layer
Data link layer
End
system
α
Network layer
Network layer
Physical layer
Data link layer
Network layer
Physical layer
Data link layer
Network layer
Network Service
Network layer có thể cung cấp nhiều dịch vụ cho transport layer
Connection-oriented service hay connectionless service
Best-effort hay delay/loss guarantees
Trang 7Connection Oriented Service
Transport layer không thể yêu cầu truyền cho đến khi đã thiết lập xong kết nối
Network layer được thông báo trước về luồng dữ liệu gửi vào mạng
Trong quá trình thiết lập kết nối có thoa thuận về sử dụng và QoS, và trao đổi tài nguyên mạng
Yêu cầu có ngắt kết nối
Phức tạp hơn connectionless service
Trang 8Connectionless Service
Đơn giản
Chỉ cần hai thao thác giữa network layer va transport layer
Phía phát: yêu cầu gửi packet
Phía thu: chỉ thị đã có gói tới
Giao trách nhiệm về kiểm soát lỗi, thứ tự packets, điều
khiển luồng cho E2E transport layers
Trang 9Network Internal Operation
Connectionless operation
Packets truyền qua mạng ở dạng datagram
Mỗi packet được định tuyến độc lập
Các packets có thể được truyền qua các đường khác nhau và có thể đến không theo thứ tự
Trang 10Network Service vs Operation
Network Service
Datagram Transfer
Tin cậy và có thể truyền
ứng dụng có tốc độ bít không đổi (constant bit rate)
Các kết hợp có thể có
Connection-oriented service over Connectionless operation
Connectionless service over Connection-Oriented operation
Tùy trường hợp & yêu cầu xác định
Trang 11Các chức năng của Network Layer
Routing: là cơ cấu để xác định một tập hợp các đường tốt
nhất để định tuyến các packet; yêu cầu hợp tác của các
phần tử trong mạng
Forwarding: truyền các packets từ đầu vào NE tới đầu ra
Trang 13Đặc điểm mạng chuyển mạch gói
networks
Sử dụng Statistical Multiplexing để tập trung các dòng
Các ứng dụng peer-to-peer kích thích sự phát triển mạnh về dung lượng lưu lượng
mạng được kiểm soát bởi nhiều tổ chức khác nhau
Không có một thực thể nào chịu trách nhiệm cho dịch vụ end-to-end
Trang 14Access MUX
To packet network
Access Multiplexing
Lưu lượng packet từ các người dùng được ghép kênh tại điểm truy nhập vào mạng thành các dòng kết hợp
Lưu lượng DSL ghép kênh tại DSL Access Mux (DSLAM)
Lưu lượng Cable modem ghép kênh tại Cable Modem
Trang 15Home LANs
LAN Access using Ethernet or WiFi (IEEE 802.11)
Private IP addresses in Home (192.168.0.x) using Network Address Translation (NAT)
Single global IP address from ISP issued using Dynamic Host Configuration Protocol (DHCP)
Home Router
To packet network
WiFi
Ethernet
Trang 16LAN Concentration
LAN Hubs and switches in the access network also aggregate packet streams that flows into switches and routers
Switch / Router
Trang 17R
R R
S
S S
s
s s
Organization Servers
Trang 18Interdomain level
Intradomain level
Autonomous
system or domain
Border routers
Border routers
Internet service provider
s s s
Trang 19National Service Provider A
National Service Provider B
National Service Provider C
Private peering
Internet Backbone
Network Access Points: set up during original
commercialization of Internet to facilitate exchange of traffic
Private Peering Points: two-party inter-ISP agreements to
Trang 20RB
Route Server
NAP
National Service Provider A
National Service Provider B
National Service Provider C
Trang 21Vai trò của Routing
Chuyển packet như thế nào từ nơi này đến nơi khác?
trở thành một thách thức chính
Các giao thức Interior gateway protocols (IGPs) được sử dụng để xác định các tuyến trong một domain
Các giao thức Exterior gateway protocols (EGPs) được sử dụng để xác định các routes qua các domains
Các routes phải nhất quán & tạo các dòng ổn định
Cấu trúc phân cấp của địa chỉ IP có ý nghĩa thiết yếu để giữ kích thước bảng định tuyến có thể quản lý được
Trang 23Chức năng chuyển mạch
Kết nối động các đầu vào tới đầu ra
Cho phép chia sẻ động các nguồn tài nguyên truyền dẫn
Hai giải pháp cơ bản:
Trang 24Packet switch Network
Transmission
line User
Packet Switching Network
Packet switching network
Chuyển packets giữa các người sử dụng
Các đường truyền dẫn + packet switches (routers)
Bắt nguồn từ message switching
Hai chế độ công tác:
Connectionless ()
Virtual Circuit
Trang 25 Message switching phát minh cho điện báo
Toàn bộ các bản tin được ghép vào các đường chia sẻ, lưu giữ & chuyển tiếp
Đầu bản tin sử dụng để đánh địa chỉ source &
Message Switching
Trang 26t t t t
Trễ trong Message Switching
Có thể có trễ xếp hàng tại mỗi tuyến
Trang 27Messages dài hay Packets
Approach 1: send 1 Mbit
Probability packet arrives correctly
On average it takes about 1.1 transmissions/hop
Total # bits transmitted ≈ 2.2 Mbits
3 / 1 )
10 1
( − 6 106 ≈ 10610 6 = 1 ≈
= − e− − e−
P c P c′ = ( 1 − 10 −6)105 ≈ e−10510−6 = e−0.1 ≈ 0 9
Trang 28Packet Switching - Datagram
Bản tin được chia nho thành
các đơn vị dữ liệu nho hơn
(packets)
Địa chỉ source & destination ở
packet header
Connectionless, các packet
được định tuyến độc lập
(datagram)
Packet có thế đến không theo
trình tự
Pipelining các packets qua
mạng có thể giảm trễ, tăng
thông lượng
Trễ thấp hơn message
switching, thích hợp cho lưu
lượng tương tác
Packet 2
Packet 1
Packet 1
Packet 2 Packet 2
Trang 29t t t t
1
Minimum Delay = 3τ + 5(T/3) (single path assumed)
Có thể có trễ xếp hàng tại mỗi tuyến
Packet pipelining cho phép message đến sớm hơn
Trễ trong Packet Switching
Giả thiết 3 packets trong 1 message đi qua cùng 1
đường
Trang 30t t t
1
3 τ + 2(T/3) first bit received
3 τ + 3(T/3) first bit released
3 τ + 5 (T/3) last bit released
Lτ + (L-1)P first bit received
Lτ + LP first bit released
Lτ + LP + (k-1)P last bit released
Trang 31address
Output port
2458
7 0785
6
12 1566
Bảng định tuyến trong Datagram Networks
Route được xác định bởi bảng tra
Quyết định định tuyến liên quan đến việc tìm ra chặng tiếp theo ở trên tuyến tới đích xác định
Bảng định tuyến có một giá trị cho mỗi đích xác định cổng ra tới chặng tiếp theo
Kích thước của bảng trở nên quá lớn khi số trạm đích rất lớn
Trang 32Ví dụ: Internet Routing
Giao thức IP sử dụng chuyển mạch gói datagram qua các mạng
Các mạng được coi như các đường liên kết dữ liệu
Các hosts có địa chỉ IP hai phần:
Network address + Host address
Các routers tra bảng theo network address
Giảm kích thước của routing table
Trang 33Packet Switching – Virtual Circuit
Thiết lập một đường cố định giữa nguồn và đích trước khi truyền dữ liệu
Tất cả các packets trên một kết nối đi theo cùng một đường
Có thể sử dụng cho dịch vụ variable bit rates
Trễ biến đổi, nhưng vẫn còn lớn hơn so với circuit switching
Có thể phân phối tài nguyên trên mỗi tuyến theo yêu cầu
Virtual circuit
Packet Packet
Packet
Packet
Trang 34Connect request
Connect confirm
Connect confirm
Connect confirm
…
Connection Setup
Các bản tin báo hiệu lan truyền khi chọn được tuyến
Các bản tin báo hiệu xác định kết nối và thiết lập các bảng chuyển tiếp trong switches
Tại đầu vào mỗi swicths, kết nối được xác định bởi một
nhãn gọi là Virtual Circuit Identifier (VCI)
Mỗi switch chỉ cần biết quan hệ giữa nhãn (VCI) đầu vào và nhãn (VCI) đầu ra tới switch tiếp theo
Khi bảng chuyển tiếp thiết lập, packets có thể đi theo dọc đường đã thiết lập
Trang 35t t t
Trễ thiết lập kết nối
lớn các packets
Trang 36VCI
Output port
Output VCI
23 16
34
Bảng Chuyển tiếp của Virtual Circuit
Mỗi input port của switch có một bảng chuyển tiếp
Tìm VCI của trong header của packet tới
Xác định output port (next hop) và chèn VCI cho tuyến tiếp theo
Tốc độ xử lý cao do độ dài VCI ngắn (số kết nối max cho 1 input port)
Bảng có thể bao gồm cả ưu tiên hay các thông tin khác
Trang 37Minimum delay = 3 τ + T
t t t
packet có thể chuyển tiếp ngay sau khi thu và xử lý xong header
Trang 38Message vs Packet Minimum Delay
Trang 39Ví dụ: ATM Networks
Tất cả thông tin ánh xạ thành các packet có độ dài cố định (53bytes) gọi là cells
Thiết lập kết nối qua mạng
Thiết lập virtual circuits qua mạng
Thiết lập bảng tại các ATM switches
Các dịch vụ
Constant bit rate connections
Variable bit rate connections
Trang 40Chapter 7
Packet-Switching
Networks
Datagrams and Virtual Circuits
Structure of a Packet Switch
Trang 41Packet Switch: Intersection where
Traffic Flows Meet
1 2
N
1 2
Trang 42Line card
1 2 3
Generic Packet Switch
“Unfolded” View of Switch
Ingress Line Cards
Header processing
Demultiplexing
Routing in large switches
Controller
Routing in small switches
Signalling & resource allocation
Interconnection Fabric
Transfer packets between line cards
Egress Line Cards
Scheduling & priority
Multiplexing
Trang 43Backplane transceivers
To
physical
ports
To switch fabric
To other line cards
Line Cards
Folded View
1 circuit board is ingress/egress line card
Physical layer processing
Data link layer processing
Network header processing
Physical layer across fabric + framing
Trang 441 2 3
N
1 2 3
N
Queue Control
Ingress Processing
Connection Control
Shared Memory Packet Switch
Output Buffering
Trang 451 2 3
Large switches built from crossbar & multistage space switches
Requires centralized controller/scheduler (who sends to whom when)
Trang 460 1 2
3 4 5 6 7
0 1 2 3 4 5 6 7
Self-Routing Switches
Trang 48Định tuyến trong Packet Networks
Có 3 tuyến routes từ 1 tới 6:
1-3-6, 1-4-5-6, 1-2-5-6
Tuyến nào “tốt nhất”?
Trễ nho nhất? Số chặng ít nhất? Băng thông lớn nhất? Chi phí thấp nhất? Tin cậy nhất?
Trang 49Yêu cầu về thuật toán định tuyến
Đáp ứng nhanh khi có thay đổi
Cấu hình hay băng thông, nghẽn
Xác định nhanh các router tạo nên tập hợp các tuyến
Trang 50C
D
1 5
2 3
7 1
Trang 51 Example: VCI from A to D
From A & VCI 5 → 3 & VCI 3 → 4 & VCI 4
Trang 52Destination Next node
Destination Next node Destination Next node
Destination Next node Destination Next node
Bảng Định tuyến trong
Datagram Packet Networks
Trang 530000
0111
1010 1101
0001
0100
1011 1110
0011
0101
1000 1111
0011
0110
1001 1100
R1
1
4 3
Không có quan hệ giữa các địa chỉ gần nhau
Bảng định tuyến cần 16 số
Trang 540000
0001
0010 0011
0100
0101
0110 0111
1100
1101
1110 1111
1000
1001
1010 1011
1
4 3
Địa chỉ có Phân cấp và Định tuyến
Trang 55Định tuyến Đặc biệt
Đánh tràn (Flooding)
Hữu ích khi thiết lập mạng
Hữu ích khi lan truyền thông tin tới các nút
Đánh lệch (Deflection Routing)
Cố định, thủ tục định tuyến đặt trước
Không tổng hợp tuyến
Trang 56Gửi một packet tới tất cả các nút trong mạng
Không có bảng định tuyến
Sử dụng khi cần quảng bá packet tới tất cả các nút (VD: lan truyền thông tin trạng thái link)
Giải pháp
Gửi packet tới tất cả các ports trừ port tới
Số lượng truyền packet tăng theo hàm mu
Trang 60Flooding Giới hạn
Số packets truyền sau mỗi chặng tăng theo hàm mu, có thể gây tắc nghẽn mạng
Giải pháp giới hạn số packets
Trường Time-to-Live ở mỗi packet giới hạn số chặng tới một đường kính nhất định
Mỗi switch bổ sung ID của nó trước khi flooding; loại bo truyền lặp
Trạm nguồn đặt số thứ tự ở mỗi packet; switch ghi lại địa chỉ
nguồn và số thứ tự và loại bo truyền lặp
Trang 61Deflection Routing
port)
packet tới port khác
topology)
Mạng Manhattan street
Mảng vuông của các nút
Nút được ký hiệu (i,j)
Hàng chạy một chiều
Cột chạy 1 chiều
Đề xuất cho mạng optical packet
Trang 65Shortest Paths & Routing
Có nhiều đường nối nguồn bất kỳ tới đích bất kỳ
Định tuyến liên quan đến việc chọn ra đường sử dụng để thực hiện một chuyển tiếp packet
Có thể gắn một giá trị “chi phí” hay “cự ly” cho một tuyến nối hai nút mạng
Định tuyến trở thành bài toán tìm đường ngắn nhất
(shortest path problem)
Trang 66Routing Metrics
Là phương tiện đo độ mong muốn của một đường (path)
Số chặng (Hop count): là đại lượng thô (rough) về tài nguyên sử dụng
Độ tin cậy (Reliability): độ khả dụng của tuyến; BER
Trễ (Delay): tổng trễ theo đường (path); phức tạp & có tính động
Băng thông (Bandwidth): “dung lượng khả dụng” trong một đường
Tải (Load): Mức độ sử dụng tuyến & router trên một đường
Chi phí: $$$
Trang 67Các giải pháp Shortest Path
Các giao thức Vector Cự ly (Distance Vector Protocols)
Các nút kề (neighbors) trao đổi danh sách các cự ly tới đích
Xác định chặng tiếp theo tốt nhất cho từng đích
Thuật toán (phân tán) đường ngắn nhất Ford-Fulkerson
Các giao thức Trạng thái Tuyến (Link State Protocols)
Thông tin trạng thái tuyến được đánh tràn (flood) tới tất cả các routers
Các routers có đầy đủ thông tin về topology của mạng
Tính toán đường ngắn nhất (Shortest path) và chặng tiếp theo
Thuật toán (tập trung) đường ngắn nhất Dijkstra
Trang 68g Q L
Vector Cự ly
Do you know the way to Hạ Long?
Trang 69Vector Cự ly
Các biển chỉ đường tại chỗ
Bảng định tuyến
Danh sách thông tin cho
trao đổi các dữ liệu (entries)
theo tốt nhất hiện xác định được
kề biết
Theo chu kỳ
Sau khi có thay đổi
dest next dist
Trang 70Đường ngắn nhất tới HL
Hạ Lo ng
Dj
Di Nếu Di là cự ly ngắn nhất từ nút i tới HL,
và nếu j là nút kề trên đường ngắn nhất
Các nút tìm đường ngắn nhất tới một nút
đích, vd., tới Hạ Long
Trang 71i không biết đường ngắn nhất tới HL mà
chỉ có thông tin tại chỗ từ các nút kề
Dj"
i
Hạ Lo ng
Đường ngắn nhất tới HL
Trang 72Why Distance Vector Works
Hạ
Long
1 Hop From HL
2 Hops From HL
3 Hops
From HL
Accurate info about HL
HL sends accurate info
Hop-1 nodes calculate current (next hop, dist), & send to neighbors