☎️ Dial Plan là gì? “Bản đồ định tuyến” của hệ thống VoIP
Trong hệ thống điện thoại truyền thống, người dùng chỉ cần nhớ số và gọi. Nhưng phía sau một cuộc gọi VoIP là hàng loạt quyết định: số vừa quay có hợp lệ không, cần chuyển đổi thế nào, cuộc gọi được phép đi đâu và phải gửi qua Gateway nào?
Tất cả những quy tắc đó tạo thành Dial Plan.
Hình minh họa cho một trường hợp rất điển hình:
User
│
│ Dial 1234
▼
1234
│
│ Transformation
▼
84961234
│
│ Routing
▼
IP Phone
84961234
Người dùng chỉ cần quay 1234, nhưng hệ thống hiểu rằng số thực tế cần gọi là 84961234.
Dial Plan thực hiện việc chuyển đổi và tìm đường để đưa cuộc gọi đến đúng endpoint.
5 thành phần quan trọng của Dial Plan
1. User Input – Người dùng nhập số gì?
Đây là chuỗi digit mà người dùng quay:
1234
hoặc:
0909123456
Hệ thống Call Control phải phân tích chuỗi số này trước khi quyết định bước tiếp theo.
2. Transformation – Chuẩn hóa số
Số người dùng nhập chưa chắc đã phù hợp để routing.
Do đó hệ thống có thể thêm, xóa hoặc thay đổi digit.
Ví dụ:
User quay: 1234
↓
Transformation
↓
Số chuẩn hóa: 84961234
Trong hệ thống lớn, một chiến lược rất phổ biến là chuẩn hóa số về định dạng E.164, ví dụ:
+84961234567
Điều này giúp Dial Plan dễ quản lý hơn khi có nhiều site hoặc nhiều quốc gia.
3. Routing – Cuộc gọi phải đi đâu?
Sau khi có số phù hợp, hệ thống quyết định đường đi.
Ví dụ:
Extension → IP Phone
Mobile → PSTN Gateway
Quốc tế → SIP Trunk
Site khác → WAN
Có thể xem đây giống như routing table của router, nhưng thay vì tìm đường dựa trên IP prefix, Call Routing tìm đường dựa trên telephone number/pattern.
4. Routing Restrictions – Ai được phép gọi?
Không phải người dùng nào cũng được phép gọi mọi nơi.
Ví dụ:
Đây là khái niệm Class of Service (CoS) trong Dial Plan.
Nó giúp kiểm soát ai được phép gọi đến đâu.
5. Call Presentation – Hiển thị thông tin cuộc gọi
Dial Plan còn liên quan đến cách số điện thoại được hiển thị cho bên nhận.
Ví dụ một nhân viên có extension:
1234
nhưng khi gọi ra PSTN, người nhận có thể thấy:
028 3912 1234
thay vì số nội bộ 1234.
Numbering Plan và Dial Plan khác nhau thế nào?
Hai khái niệm này dễ bị nhầm.
Numbering Plan định nghĩa cấu trúc và cách tổ chức số điện thoại.
Ví dụ:
1xxx → TP.HCM
2xxx → Hà Nội
3xxx → Đà Nẵng
Trong khi Dial Plan rộng hơn. Nó xác định:
🎯 Cách nhớ đơn giản
Có thể hình dung Dial Plan qua 4 bước:
Ví dụ:
User quay 1234
↓
Transform thành 84961234
↓
Kiểm tra quyền gọi
↓
Tìm Route
↓
Destination Phone
Với Network Engineer, nếu Routing Table là trái tim của mạng IP, thì có thể xem Dial Plan là trái tim của Call Routing trong hệ thống VoIP.
Một Dial Plan được thiết kế tốt không chỉ giúp cuộc gọi đến đúng người, mà còn phải dễ mở rộng, dễ troubleshooting, kiểm soát quyền gọi và chuẩn hóa numbering khi hệ thống phát triển từ vài chục lên hàng nghìn IP Phone.
Trong hệ thống điện thoại truyền thống, người dùng chỉ cần nhớ số và gọi. Nhưng phía sau một cuộc gọi VoIP là hàng loạt quyết định: số vừa quay có hợp lệ không, cần chuyển đổi thế nào, cuộc gọi được phép đi đâu và phải gửi qua Gateway nào?
Tất cả những quy tắc đó tạo thành Dial Plan.
Dial Plan là tập hợp các quy tắc ánh xạ số mà người dùng quay (dialed digits) đến endpoint hoặc đích cần kết nối.
📞 Ví dụ: Người dùng quay 1234Hình minh họa cho một trường hợp rất điển hình:
User
│
│ Dial 1234
▼
1234
│
│ Transformation
▼
84961234
│
│ Routing
▼
IP Phone
84961234
Người dùng chỉ cần quay 1234, nhưng hệ thống hiểu rằng số thực tế cần gọi là 84961234.
Dial Plan thực hiện việc chuyển đổi và tìm đường để đưa cuộc gọi đến đúng endpoint.
5 thành phần quan trọng của Dial Plan
1. User Input – Người dùng nhập số gì?
Đây là chuỗi digit mà người dùng quay:
1234
hoặc:
0909123456
Hệ thống Call Control phải phân tích chuỗi số này trước khi quyết định bước tiếp theo.
2. Transformation – Chuẩn hóa số
Số người dùng nhập chưa chắc đã phù hợp để routing.
Do đó hệ thống có thể thêm, xóa hoặc thay đổi digit.
Ví dụ:
User quay: 1234
↓
Transformation
↓
Số chuẩn hóa: 84961234
Trong hệ thống lớn, một chiến lược rất phổ biến là chuẩn hóa số về định dạng E.164, ví dụ:
+84961234567
Điều này giúp Dial Plan dễ quản lý hơn khi có nhiều site hoặc nhiều quốc gia.
3. Routing – Cuộc gọi phải đi đâu?
Sau khi có số phù hợp, hệ thống quyết định đường đi.
Ví dụ:
Extension → IP Phone
Mobile → PSTN Gateway
Quốc tế → SIP Trunk
Site khác → WAN
Có thể xem đây giống như routing table của router, nhưng thay vì tìm đường dựa trên IP prefix, Call Routing tìm đường dựa trên telephone number/pattern.
4. Routing Restrictions – Ai được phép gọi?
Không phải người dùng nào cũng được phép gọi mọi nơi.
Ví dụ:
- Nhân viên → chỉ gọi nội bộ và trong nước.
- Manager → được gọi quốc tế.
- Lobby Phone → chỉ gọi nội bộ và số khẩn cấp.
Đây là khái niệm Class of Service (CoS) trong Dial Plan.
Nó giúp kiểm soát ai được phép gọi đến đâu.
5. Call Presentation – Hiển thị thông tin cuộc gọi
Dial Plan còn liên quan đến cách số điện thoại được hiển thị cho bên nhận.
Ví dụ một nhân viên có extension:
1234
nhưng khi gọi ra PSTN, người nhận có thể thấy:
028 3912 1234
thay vì số nội bộ 1234.
Numbering Plan và Dial Plan khác nhau thế nào?
Hai khái niệm này dễ bị nhầm.
Numbering Plan định nghĩa cấu trúc và cách tổ chức số điện thoại.
Ví dụ:
1xxx → TP.HCM
2xxx → Hà Nội
3xxx → Đà Nẵng
Trong khi Dial Plan rộng hơn. Nó xác định:
Người dùng quay số gì → số được biến đổi thế nào → có được phép gọi không → cuộc gọi được route đi đâu.
🎯 Cách nhớ đơn giản
Có thể hình dung Dial Plan qua 4 bước:
Dial → Transform → Authorize → Route
Ví dụ:
User quay 1234
↓
Transform thành 84961234
↓
Kiểm tra quyền gọi
↓
Tìm Route
↓
Destination Phone
Với Network Engineer, nếu Routing Table là trái tim của mạng IP, thì có thể xem Dial Plan là trái tim của Call Routing trong hệ thống VoIP.
Một Dial Plan được thiết kế tốt không chỉ giúp cuộc gọi đến đúng người, mà còn phải dễ mở rộng, dễ troubleshooting, kiểm soát quyền gọi và chuẩn hóa numbering khi hệ thống phát triển từ vài chục lên hàng nghìn IP Phone.