Tải bản đầy đủ (.doc) (50 trang)

Nghiên cứu giao thức PPTP trong VPN

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (952.54 KB, 50 trang )

Trường Đại Học Bách Khoa Hà Nội
Khoa Công Nghệ Thông Tin

Bộ môn Truyền Thông
và Mạng Máy Tính
BÁO CÁO THỰC TẬP CHUYÊN NGÀNH

Đề tài
Nghiên cứu giao thức PPTP trong VPN
Giáo viên hướng dẫn :
Sinh viên:


Mục lục :
Phần I : Mạng riêng ảo ( Virtual Private Network )……………….. 4
1.Tổng quan về VPN…………………………………………. 4
2.Các dạng VPN…………………………………………… … 7
Phần II : Tìm hiểu về PPTP……………………………………. ….. 8
1.Tổng quan về PPTP ……………………………………….. 8
2.Tổng quan về giao thức …………………………………… 11
3.Tổng quan về điều khiển kết nối ( Control Connection )... … 11
4. Tổng quan về công nghệ đường hầm Tunnel ……………… 12
5. Định dạng của gói tin ( message ) và giao thức mở rộng…… 12
Phần III : Định dạng chi tiết các tin điều khiển. ……………………... 15
1. Start-Control-Connection-Request ………………………… 15
2. Start-Control-Connection-Reply…………………………… 17
3. Stop-Control-Connection-Request ………………………... 19
4. Stop-Control-Connection-Reply…………………………… 20
5. Echo – Request……………………………………………. . 21
6. Echo-Reply………………………………………………… 22
7. Outgoing-Call-Request…………………………………….. 23


8. Outgoing-Call-Reply………………………………………. 25
9. Incoming-Call-Request……………………………………. 27
10. Incoming-Call-Reply……………………………………… 29
11. Incoming-Call-Connected……………………………….. 31
12. Call-Clear-Request………………………………………… 32
13. Call-Disconnect-Notify…………………………………… 33
14. WAN-Error-Notify……………………………………….. 34
15. Set-Link-Info………………………………………………. 35
16.Mã lỗi cơ bản……………………………………………….. 36
Phần IV : Các trạng thái ( State ),đóng gói dữ liệu và sơ đồ thực hiện… 37
1. Control Connection States…………………………………… 37
1.1 Control Connection Originator ( có thể là PAC hoặc PNS )… 37
1.2 Control Connection Receiver ( PAC PNS )………………….39
1.3 Điều khiển kết nối khi phát sinh xung đột ( Collision )………40
1.4 Keep Alives and Timers : ……………………………………40
2. Call States ( các trạng thái gọi )……………………………… 41
2.1 Incoming-Call ……………………………………………….. 41
2.1.1 PAC-Incoming-Call States………………………………….42
2.1.2 PNS Incoming Call States………………………………….. 43


2.2 Outgoing Calls………………………………………………… 44
2.2.1 PAC Outgoing-Call States………………………………….. 44
2.2.2 PNS Outgoing Call States…………………………………… 45
2.3 Đóng gói dữ liệu……………………………………………... 46
2.4 Cấu trúc GRE header………………………………………… 47
Phần V Kết Luận……………….……………………………………….49
Phần VI : Tài liệu tham khảo…………………………………………….50



PHẦN I
Mạng riêng ảo Vitural Private Network (VPN )
1. Tổng quan về VPN
VPN mạng riêng ảo( Virtual Private Network ) thường được sử dụng trong
các công ty hoặc các tổ chức cần độ bảo mật cao.
Trước khi có VPN người ta dùng Internet để lướt web một rất nhanh chóng
và tiện dụng.
Tuy nhiên Internet cũng có những vấn đề về bảo mật bởi vì những thông tin
từ máy tính của bạn như thẻ tín dụng, thông tin cá nhân .v..v cần phải được
truyền đi qua rất nhiều trạm ( router hay server ) để có thể đến được đích vì
thế những thông tin này rất dễ bị nghe trộm.
Vì vậy vấn đề đặt ra là làm sao thông tin được lưu thông qua Internet nhưng
vẫn phải đảm bảo được vấn đề bảo mật cao. VPN sinh ra nhằm đáp ứng nhu
cầu này.
Dưới đây là hình mô phỏng 1 mô hình mạng Internet trong đó có tồn tại một
mạng VPN.Đường chấm ngắt quãng tượng trưng cho VPN Tunnel.


- Về thực chất VPN vẫn sử dụng Internet như là một hạ tầng không thể
thiếu để truyền tải thông tin. Sự khác biệt ở đây là VPN sử dụng
những giao thức riêng khác biệt với những giao thức khác trên
Internet, vì thế VPN tạo nên một mạng riêng ảo, mà chỉ những thành
viên trong mạng VPN đó mới có thể trao đổi thông tin và hiểu được
tín hiệu của nhau.
- VPN tạo ra khả năng cho Client và Server có thể tiếp cận với nhau.
VPN Client xác thực người dùng, mã hoá dữ liệu và quản lý phiên làm
việc với VPN Server bằng công nghệ Tunneling ( hay còn gọi là công
nghệ đường hầm )

C

A

G

E

B
D

H

I

F

Tunneling có thể hiểu như là những con đường riêng được định hướng
qua các node trên mạng Internet.
Hình mình hoạ trên đoạn kẻ đậm C-D-E-F-G là một Tunneling.
- VPN có thể chia làm 2 vùng sau :
+ Vùng thứ nhất gọi là vùng được bảo vệ ( protected ) hay còn gọi là
vùng bên trong (inside). Vùng này được bảo vệ chặt chẽ từ lớp vật lý
đến lớp ứng dụng để đảm bảo thông tin luôn chính xác và an toàn.
+ Vùng thứ hai kém tin cậy hơn gọi là vùng ngoài (outside ).
+ Thông thường giữa Client và Server sẽ có Firewall ( tường lửa ).
- Khi mà Client thiết lập kết nối với Firewall thì Client phải chứng
thực được quyền truy cập của nó để có thể sử dụng những dịch vụ bên trong.
VPN Client được cấu hình để đảm bảo rằng tất cả thông tin truyền tải
phải đi qua Tunnel khi mà VPN được kích hoạt. Điều đó có nghĩa là khi
VPN Client đang hoạt động thì tất cả truy cập từ bên ngoài vùng được
bảo vệ đều phải đi qua FireWall . Điều này nhằm làm giảm thiểu khả



năng Hacker có thể đoạt quyền quản trị của các máy chủ, hoặc các máy
tính khác trong nội bộ các nhóm Server . Có thể coi như là các VPN
Client không hề tồn tại, điều này hết sức ý nghĩa bởi vì những máy tính
trong cùng một mạng nội bộ với VPN Client rất có thể giả dạng thông tin
để truy nhập trái phép vào VPN Server.
Hình minh hoạ :
Trong hình dưới đây tồn tại 2 VPN A và B.
Kí hiệu :
A : Mạng VPN A
B : Mạng VPN B
SP : Service Provider Backbone Router ( có thể kèm Firewall )


2. Các dạng VPN :
Bảo mật trong VPN sử dụng giao thức mã hoá đường hầm
(Cryptographic Tunneling Protocol ) để cung cấp độ an toàn cần thiết
nhằm ngăn chặn việc bị nghe lén ( snooping ), và xác thực thông tin
người gửi ,đảm bảo nội dung thông tin luôn chính xác và toàn vẹn.
Dưới đây là các giao thức VPN sử dụng :
• Ipsec ( IP Security ) một phần không thể thiếu của Ipv6.
• SSL được sử dụng trong tạo một mạng độc lập như OpenVPN và
cả trong việc bảo mật của Web Proxy.
• PPTP ( point to point tunneling protocol ) được phát triển bởi rất
nhiều công ty trong đó có Microsoft, Cisco
• L2TP (Layer 2 Tunneling Protocol ) được phát triển bởi Microsoft
và Cisco
• L2TP3 ( Layer 2 Tunneling Protocol Version 3 )



Phần II
Tìm hiểu về PPTP ( Point to Point Tunneling Protocol )
1. Tổng quan về PPTP :
• PPTP được phát minh bởi IETF ( The Internet Engineering Task
Force ).
Nó được áp dụng đầu tiên bởi Cisco rồi sau đó là Microsoft và nhanh chóng
trở nên phổ biến bởi vì rất dễ cấu hình và là giao thức VPN đầu tiên được
cung cấp trong Microsoft Dialup Networking.
Tất cả các hệ điều hành Window kể từ Win95 cho đến nay đều hỗ trợ PPTP
Client và các hệ thống Router and Remote Access Server ( RRAS) đều bao
gồm cả PPTP Server.
Gần đây hệ điều hành Linux, Mac OS X, và cả Palm PDA cũng đều hỗ trợ
PPTP.
Dưới đây là hình minh hoạ một kết nối PPTP

Ta sẽ làm rõ hơn một số khái niệm được đề cập đến trong phần
này và những phần sau :
o Network Access Server ( NAS ):
Là thiết bị cung cấp khả năng truy cập theo yêu cầu tới những
người sử dụng. Kết nối này là kết nối point-to-point sử dụng
đường truyền PSTN hoặc ISDN .
o PPTP Access Concentrator ( PAC ) :
Là thiết bị kết nối với 1 hoặc nhiều đường truyền PSTN hoặc
ISDN, có khả năng quản lý và phân tích các gói tin PPP.


PAC chỉ cần sử dụng TCP/IP để lưu thông với 1 hoặc nhiều
PNS. Thông tin có thể chuyển đi bằng một giao thức không
nhất thiết là IP.

o PPTP Network Server ( PNS ) :
PNS có thể hình dung là để điều khiển một mục đích tổng
quan bao gồm các máy tính,server.
PNS nắm giữ mặt Server của giao thức PPTP. Từ khi PPTP
tin cậy hoàn toàn vào TCP/IP và độc lập hoàn toàn với các
giao diện cứng, PNS có thể sử dụng những sự kết hợp của
giao diện phần cứng IP bao gồm thiết bị LAN và WAN.
o Session ( phiên ):
PPTP là kết nối định hướng (connection- oriented).
PAC và PNS duy trì trạng thái cho từng User kết nối với PAC.
Một session được tạo ra khi có một cố gắng kết nối end-to-end
PPP từ một User và PNS.
Dữ liệu về session này được gửi trong tunnel giữa PAC và
PNS.
o Tunnel (đường hầm ):
Tunnel là một đường đi ảo được định nghĩa bởi từng cặp PNS
và PNC. Giao thức đường hầm sử dụng giao thức mã hoá
GRE ( Generic Routing Encapsulation ).
Tunnel vận chuyển dữ liệu PPP giữa PAC và PNS và rất nhiều
phiên ( session ) kết hợp trong Tunnel.Tunnel dùng TCP để
điều khiển sự thiết lập, duy trì phiên làm việc ( session ) và
chính nó
• Thực chất PPTP là một giao thức đặc biệt cho phép giao thức PPP có
thể đi qua một đường hầm trong mạng IP. PPTP không hề làm thay
đổi giao thức PPP mà đúng hơn là tạo một phương tiện khác để vận
chuyển gói tin PPP.
• PPTP cho phép các chức năng của Network Access Server ( NAS ) có
thể chia nhỏ ra thành cấu trúc Client & Server.



Một cách truyền thống những chức năng của NAS có thể chia nhỏ thành
những phần sau :
Chức năng 1 : Kết nối vật lý với PSTN hoặc ISDN và điều khiển
modem ngoài, thiết bị đầu cuối. NAS có thể kết nối trực tiếp với các
Telco sử dụng tín hiệu tương tự hay mạch số, kết nối với modem
ngoài hay thiết bị đầu cuối.
NAS kết nối với dạng mạng chuyển mạch ( Circuit-Switched )
bằng những loại modem khác hoặc giao thức DSS1 ISDN.
Chức năng 2 : Kết thúc PPP Link Control Protocol Session ( LCP )
Chức năng 3 : Tham gia vào quá trình xác thực authentication của
giao thức PPP.
Chức năng 4 : Kết hợp các kênh và quản lý gói cho giao thức PPP
multilink protocol
Chức năng 5 : Kết thúc PPP network control protocol ( NCP )
Chức năng 6 : Multiprotocol Routing và cầu nối giữa các giao diện
của NAS :
PPTP phân chia các chức năng trên giữa PAC và PNS như sau:
PAC đảm nhiệm chức năng 1,2 và có thể là cả chức năng 3
PNS đảm nhiệm chức năng 3, 4 ,5 ,6
Giao thức được sử dụng để vận chuyển đơn vị dữ liệu PPP ( PDUs )
giữa PAC và PNS được địa chỉ hoá bởi PPTP.


2. Tổng quan về giao thức :
PPTP có 2 thành phần tồn tại song song :
• Điều khiển kết nối giữa từng cặp PAC và PNS qua giao thức
TCP
• Điều khiển IP Tunnel giữa từng cặp PAC và PNS được dùng để
vận chuyển gói tin PPP mã hoá theo dạng GRE cho User giữa
từng cặp PAC và PNS

3. Tổng quan về điều khiển kết nối ( Control Connection )
• Trước khi đường hầm xuất hiện giữa PAC và PNS thì Control
Connection phải được thực hiện giữa chúng. Control Connection là
dạng chuẩn TCP Session giúp cho PPTP có thể điều khiển và quản lý
những thông tin đi qua.
• Control Connection liên quan nhưng cũng độc lập với Tunnel.
Với từng cặp PNS & PAC thì Control Connection và Tunnel tồn tại độc
lập.Nó chịu trách nhiệm về thiết lập quản lý, ngắt các phiên làm việc trong
Tunnel . Đây là phương tiện để thông báo cho PNS biết có một cuộc gọi từ
ngoài vào thông qua thiết bị PAC, và là công cụ để PAC chỉ dẫn cho một
cuộc gọi ra ngoài.
• Control Connection có thể được thiết lập bởi PNS hoặc PAC.
Tuân thủ yêu cầu kết nối của TCP, PAC và PNS thiết lập điều khiển kết
nối sử dụng 2 dạng sau :
- Start-Control-Connection-Request
- Reply Message
2 Message này cũng được sử dụng để trao đổi thông tin vận hành cơ bản
của PAC và PNS.
• Khi kết nối được tạo thành, PAC và PNS có thể bắt đầu một phiên
( session ) bằng cách gửi thông tin ra ngoài hoặc trả lời thông tin gửi
vào. Control Connection có thể truyền những thay đổi đặc trưng của
từng User riêng rẽ với Set-Link-Info Message.
• Control Connection được duy trì bằng các Echo Message. Nó đảm
bảo rằng trục trặc trong kết nối giữa PAC và PNS sẽ được phát hiện
một cách nhanh chóng. Bên cạnh đó những lỗi này có thể được thông
báo bởi Wan-Error-Notify Message.
• Một điểm cần chú ý nữa là Control Connection cũng có thể làm nhiệm
vụ chuyển những lệnh có liên quan trong tương lai ví dụ như yêu cầu
cho phép PNS có thể kiểm tra trạng thái của PAC, tất nhiên hiện nay
thì những dạng tin này vẫn chưa được định nghĩa.



4. Tổng quan về công nghệ đường hầm Tunnel :
PPTP cần thiết lập Tunnel cho từng kết nối PNS-PAC.
Tunnel này được sử dụng để chuyển tất cả những gói tin PPP của User
giữa từng cặp PNS-PAC.
Điểm mấu chốt là trong header của GRE sẽ có trường phân biệt phiên
truy cập mà qua gói tin PPP có thể đi theo.
Gói tin PPP là đa thành phân mà lại không đa thành phần qua một
Tunnel bởi vì có sự phân biệt gói tin nào là của phiên kết nối nào.
GRE header còn có thể bao hàm thông tin acknowledgment và
sequencing. Những thông tin đó được sử dụng để phát hiện lỗi trong
tunnel .
Control Connection được sử dụng trong Tunnel để thiết lập tốc độ
truyền và cấc tham số bộ đệm ( buffering parameter ) để điều khiển
luồng dữ liệu PPP riêng rẽ qua Tunnel.
PPTP không dùng thuật toán riêng trong việc phòng chống tắc nghẽn
và điều khiển luồng.
5. Định dạng của gói tin ( message ) và giao thức mở rộng :
PPTP sử dụng một dạng tin thông báo gửi đi như là một dữ liệu TCP
trong điều khiển kết nối giữa PNS và PAC.
Phiên truy cập được thiết lập bằng kết nối TCP tới cổng 5678 ( port
5678 ). Cổng nguồn được chọn là một trong những cổng chưa sử
dụng.
Mỗi một gói tin điều khiển kết nối PPTP bắt đầu với 8 octet tại
header. Trong đó sẽ chứa đựng những thông tin bao gồm : độ dài của
gói tin, kiểu gói tin PPTP và “Magic Cookie”.
Có 2 dạng tin điều khiển kết nối là :
• Control Message
• Management Message ( chưa sử dụng )

Magic Cookie có giá trị không đổi là 0x1A2B3C4D , mục đích chính
của nó là để người nhận ( receiver ) có thể đảm bảo sự đồng bộ của
luồng dữ liệu TCP. Tuy nhiên nó không phải sử dụng để tái đồng bộ
khi mà đầu gửi có lỗi. Sự mất đồng bộ thường xảy ra khi bất ngờ đóng
phiên kết nối TCP.
Để rõ ràng hơn, dưới đây sẽ liệt kê các tin điều khiển kết nối bên trong
PPTP header. Mã các điều khiển kết nối này là theo chuẩn hexa.
Control Message
( Control Connection Management )

Message Code


Start-Control-Connection-Request
Start-Control-Connection-Reply
Stop-Control-Connection-Request
Stop-Control-Connection-Reply
Echo-Request
Echo-Reply
( Call Management )

1
2
3
4
5
6

Outgoing-Call-Request
Outgoing-Call-Reply

Incoming-Call-Request
Incoming-Call-Reply
Incoming-Call-Connected
Call-Clear-Request
Call-Disconnect-Notify
(Error Reporting )

7
8
9
10
11
12
13

WAN-Error-Notify
( PPP Session Control )
Set-Link-Info

14
15

Để hiểu rõ hơn về tác dụng của chúng dưới đây là 1 ví dụ thiết lập một
VPN trong một mạng LAN giữa 2 RRAS .
- Thiết lập kết nối :
PPTP Control Packet (1): Start Session Request (1)

10.10.10.1 10.10.10.10

PPTP Control Packet (1): Start Session Reply (2)


10.10.10.10 10.10.10.1

PPTP Control Packet (1): Outgoing Call Request (7)
PPTP Control Packet (1): Outgoing Call Reply (8)

10.10.10.1 10.10.10.10
10.10.10.10 10.10.10.1

PPTP Control Packet (1): Set Link Info (15)

10.10.10.1 10.10.10.10

PPTP Control Packet (1): Set Link Info (15)

10.10.10.1 10.10.10.10

PPTP Control Packet (1): Set Link Info (15)

10.10.10.10 10.10.10.1

PPTP Control Packet (1): Set Link Info (15)
PPTP Control Packet (1): Set Link Info (15)

10.10.10.1 10.10.10.10
10.10.10.10 10.10.10.1

-

Tạo PPTP Tunnel :


PPTP Control Packet (1): Echo Request (5)
PPTP Control Packet (1): Echo Reply (6)

10.10.10.10 10.10.10.1
10.10.10.1 10.10.10.10


PPTP Control Packet (1): Echo Request (5)
PPTP Control Packet (1): Echo Reply (6)

10.10.10.10 10.10.10.1
10.10.10.1 10.10.10.10

PPTP Control Packet (1): Echo Request (5)
PPTP Control Packet (1): Echo Reply (6)

-

10.10.10.10 10.10.10.1
10.10.10.1 10.10.10.10

Ngắt PPTP Tunnel :

PPTP Control Packet (1): Set Link Info (15)

10.10.10.1 10.10.10.10

PPTP Control Packet (1): Set Link Info (15)


10.10.10.10 10.10.10.1

PPTP Control Packet (1): Clear Call Request (12)

10.10.10.1 10.10.10.10

PPTP Control Packet (1): Call Disconnected Notify (13)10.10.10.10 10.10.10.1
PPTP Control Packet (1): Stop Session Request (3)
PPTP Control Packet (1): Stop Session Reply (4)

10.10.10.1 10.10.10.10
10.10.10.10 10.10.10.1

Start-Control-Connection-Request và Start-Control-Connection-Reply sẽ
quyết định xem sẽ sử dụng phiên bản ( version ) Control Connection nào.
Trường Version sẽ chứa thông tin về số version ở octet cao và số revision
tại octet thấp.


Phần III
Định dạng chi tiết các tin điều khiển
Những gói tin Control Connection được sử dụng để thiết lập và ngắt
phiên làm việc với user. Điểm chú ý đầu tiền là những tin Control
Connection là dùng để duy trì điều khiển cho chính nó. Control
Connection được khởi đầu bằng PNS hoặc PAC sau khi chúng thiết lập
được sự ưu tiên kết nối TCP. Những thông tin về thủ tục và cấu hình để
quyết định xem kết nối TCP nào sẽ được thực hiện sẽ không bao hàm
trong giao thức này.
Những dạng tin Control Connection dưới đây đều được gửi dưới dạng dữ
liệu người dùng trong kết nối TCP giữa những cặp PNS và PAC.

Dưới đây là những định dạng các trường PPTP trong TCP header :
1.Start-Control-Connection-Request :
Start-Control-Connection-Request là một dạng tin điều khiển PPTP có
tác dụng thiết lập kết nối giữa PNS-PAC.
Mỗi cặp PNS-PAC cần có một điều khiển kết nối riêng (dedicated
control connection ).
Điều khiển kết nối này cần phải được thực hiện trước khi những gói
tin PPTP khác có thể được chuyển qua.


Trường
Length
PPTP Message Type
Magic Cookie

Ý nghĩa và giá trị
Tổng độ dài trong octet của gói tin PPTP, bao
gồm toàn bộ PPTP header

Có giá trị là 1 với Control Message
Giá trị : 0x1A2B3C4D, được sử dụng để kiểm
tra sự chính xác của thông tin nhận được
Control
Message Có giá trị 1 với Start-Control-ConnectionType
Request
Reserved0
Trường này phải có giá trị là 0
Protocol Version
Thể hiện version PPTP mà người gửi lựa chọn
Reserved1

Trường này phải có giá trị là 0
Framing Capabilities Dấu hiệu cho biết dạng framing (đóng gói khung
dữ liệu ) mà đơn vị gửi có thể cung cấp :
• Hỗ trợ Framing không đồng bộ
• Hỗ trợ Framing đồng bộ
Bearer Capabilities
Dấu hiệu cho biết khả năng mà đơn vị gửi có thể
cung cấp :
• Hỗ trợ truy cập Analog
• Hỗ trợ truy cập Digital
Maximum Channels
Tổng số phiên PPP riêng rẽ mà PAC có thể cung
cấp. Trong tin Start-Control-ConnectionRequests gửi bởi PNS, giá trị này có thể là 0, và
nó phải được loại bỏ bởi PAC
Firmware Revision
Trường này chứa đựng số Firmware revision
được đưa ra bởi PAC.
Host Name
Là 64 Octet lưu thông tin về DNS của PAC hoặc
PNS. Nếu DNS ít hơn 64 octet trong chiều dài
thì những octet còn lại sẽ được điền đầy bằng giá
trị 0
Vendor Name
Là 64 octet lưu giữ thông tin về mô tả kiểu PAC
sử dụng, hoặc kiểu của phần mềm cài đặt trên
PNS. Những octet còn lại sẽ được điền giá trị 0


2. Start-Control-Connection-Reply
Start-Control-Connection-Reply là dạng tin điều khiển của PPTP được

gửi đi khi nhận được Start-Control-Connection-Request.

Trường
Length
PPTP Message type
Magic Cookie
Control Message Type
Reserved0
Protocol Version
Result Code

Ý nghĩa và giá trị
Tổng độ dài header PPTP trong
octet
Giá trị 1 với Control Message
0x1A2B3C4D
Giá trị 2 với Start-ControlConnection-Reply
0
Version của PPTP
1 : Kết nối kênh thành công
2 : Có lỗi xảy ra
3 : Kênh điều khiển lệnh đã tồn tại
4 : Người yêu cầu không có quyền
thiết lập kết nối
5 : Version PPTP của người yêu
cầu không phù hợp


Error Code
Framing Capabilities


Bearer Capabilities

Maximum Channels

Firmware Revision

Hostname

Vendor Name

Trường này được đặt là 0 nếu như
không có lỗi ở kết quả trên. Còn
nếu như có lỗi nó sẽ ghi lại mã lỗi.
Dấu hiệu cho biết dạng framing
(đóng gói khung dữ liệu ) mà đơn
vị gửi có thể cung cấp :
• Hỗ trợ Framing không đồng
bộ
• Hỗ trợ Framing đồng bộ
Dấu hiệu cho biết khả năng mà đơn
vị gửi có thể cung cấp :
• Hỗ trợ truy cập Analog
Hỗ trợ truy cập Digital
Tổng số PPP session mà PAC có
thể hỗ trợ. Trong Start-ControlConnection-Reply gửi bởi PNS thì
giá trị này phải được gán là 0, và
PAC sẽ bỏ qua giá trị này.
Bao hàm số firmware revision nếu
gửi bởi PAC, hoặc là version của

PNS PPTP driver nếu gửi bởi bởi
PNS.
Là 64 octet chứa đựng thông tin về
DNS của PAC hoặc PNS, trong
trường hợp còn thừa octet thì gía trị
còn lại sẽ được gán giá trị 0
Là 64 octet lưu giữ thông tin về mô
tả kiểu PAC sử dụng, hoặc kiểu của
phần mềm cài đặt trên PNS. Những
octet còn lại sẽ được điền giá trị 0.


3. Stop-Control-Connection-Request
Stop-Control-Connection-Request là một dạng tin điều khiển PPTP gửi bởi
PAC-PNS để báo tin cho đầu kia biết yêu cầu ngắt kết nối.
Để có thể đóng một kết nối, thì toàn bộ những cuộc gọi đang hoạt động phải
được dừng lại.

Trường
Length
PPTP Message Type
Magic Cookie
Control Message Type
Reserved0
Reason

Reserved1,Reserved2

Giá trị và ý nghĩa
Độ dài của header PPTP

Giá trị 1 với Control Message
0x1A2B3C4D
Giá trị 3 với Stop-Control-ConnectionRequest
0
Chứa đựng lý do đóng kết nối với các giá trị
sau :
• 1 ( none ) : Mã bình thường để đóng
kết nối
• 2 ( Stop-Protocol ) : Không hỗ trợ được
phiên bản giao thức đầu kia đang sử
dụng.
• 3 ( Stop-local-shutdown ) : Đơn vị gửi
đang shut down
0


4. Stop-Control-Connection-Reply
Stop-Control-Connection-Reply là một dạng tin điều khiển PPTP gửi
bởi PAC hoặc PNS để trả lời tin điều khiển Stop-Control-ConnectionRequest được gửi từ đầu kia.

Trường
Length
PPTP Message Type
Magic Cookie
Control Message Type
Reserved0
Result Code

Error Code
Reserved1


Giá trị và ý nghĩa
Tổng độ dài PPTP header trong octet
Giá trị 1 với Control Message
0x1A2B3C4D
Giá trị 4 với Stop-Control-ConnectionReply
0
Chứa đựng mã kết quả :
• 1 (OK ) : đóng kết nối
• 2 ( General Error ) : Ngắt kết nối
bị lỗi do 1 lý do nào đó
Có giá trị 0 nếu như ngắt kết nối thành
công, còn nếu không sẽ lưu giữ thông tin
mã lỗi.
0


5. Echo – Request
Echo – Request là một dạng tin nhắn điều khiển PPTP được gửi bởi
PAC hoặc PNS. Tin nhắn điều khiển này được sử dụng để “Keep
Alive” ( duy trì ) kết nối . Thiết bị nhận đuợc Echo-Request sẽ trả lời
lại bừng một tin Echo-Reply để khẳng định là kết nối vẫn được duy
trì.

Trường
Length
PPTP Message Type
Magic Cookie
Control Message Type
Reserved0

Identifier

Giá trị và Ý nghĩa
Độ dài của PPTP header trong Octet
Giá trị 1 với Control Message
0x1A2B3C4D
Giá trị 5 với Echo-Request
0
Giá trị thiết lập bởi đơn vị gửi, được sử
dụng để đơn vị nhận trả lời lại chính xác
địa chỉ cần đến.


6. Echo-Reply
Echo-Reply là một dạng tin điều khiển PPTP được gửi bởi PAC hoặc
PNS để trả lời lại tin nhắn Echo-Request từ đầu bên kia.

Trường
Length
PPTP Message Type
Magic Cookie
Control Message Type
Reserved0
Identifier
Result Code

Error Code
Reserved1

Giá trị và ý nghĩa

Độ dài của header PPTP trong octet
Giá trị 1 với Control Message
0x1A2B3C4D
Giá trị 6 với Echo-Reply
0
Giá trị này copy từ trường Identifier của
Echo-Request
Chứa đựng kết quả khi nhận được EchoRequest :
• 1 ( OK ) : Hợp lệ
• 2 ( General Error ) : Không hợp lệ
Sẽ chứa giá trị 0 nếu như không có lỗi,
còn ngược lại sẽ chứa mã lỗi
0


7. Outgoing-Call-Request
Outgoing-Call-Request là dạng tin điều khiển PPTP gửi bởi PNS đến
PNC để báo hiệu rằng cuộc gọi từ PAC đã được thiết lập. Request này
cung cấp cho PAC thông tin cần thiết để có thể thiết lập một cuộc gọi.
Nó cũng cung cấp thông tin về tốc độ truyền dữ liệu để PAC có thể
thiết lập được kết nối cho phiên làm việc đó.

Trường
Length
PPTP Message Type
Magic Cookie
Control
Message
Type
Reserved0

Call ID

Call Serial Number

Ý nghĩa và giá trị
Tổng độ dài PPTP header trong các octet
Giá trị 1 với Control Message
0x1A2B3C4D
Giá trị 7 với Outgoing-Call-Request
0
Là giá trị đơn nhất tồn tại giữa một cặp
PAC-PNS trong một phiên. Giá trị này
được sử dụng để tổng hợp và phân tích dữ
liệu đựoc gửi qua Tunnel
Là một thông số của PNS được sử dụng để


nhận biết thông tin phiên kết nối riêng
rẽ.Không giống như Call ID, cả PNS và
PAC có Call Serial Number giống nhau
với một phiên kết nối. Sự kết hợp của địa
chỉ IP và Call Serial Number là duy nhất.
Minimum BPS
Tốc độ nhỏ nhất có thể chấp nhận của
đường truyền ( bits/giây) cho một phiên
kết nối.
Maximum BPS
Tốc độ cao nhất có thể chấp nhận của
đường truyền ( bits/second ) cho một
phiên kết nối.

Bearer Type
Giá trị chỉ ra khả năng có thể đáp ứng cho
cuộc gọi ra này, giá trị như sau :
• 1 : Cuộc gọi sẽ sử dụng kênh
Analog
• 2 : Cuộc gọi sẽ sử dụng kênh số
• 3 : Cuộc gọi sẽ dụng kênh bất kỳ
Framing Type
Chứa giá trị kiểu framing PPP sử dụng
trong cuộc gọi ra :
• 1 : Framing không đồng bộ
• 2 : Framing đồng bộ
• 3 : Sử dụng dạng Framing bất kỳ
Packet Recv. Window Lưu trữ số gói tin mà PNS có thể sử dụng
Size
làm buffer cho phiên kết nối.
Packet
Processing Độ trễ trong việc xử lý gói tin truyền giữa
Deplay
PNS –PAC. Giá trị này có đơn vị là 1/10
giây. Đố với PNS thì giá trị này có thể là
rất nhỏ.
Phone
Number Tổng số chữ số của phone number.
Length
Reserved1
0
Phone Number
Là số để có thể thực hiện quay số đến. Đối
với ISDN và Analog thì trường này là một

chuỗi ASCII. Nếu Phone Number nhỏ hơn
65 octet thì những phần còn lại sẽ có giá
trị 0.
Subaddress
Là dãy 64 octet sử dụng để chứa những
thông tin thêm cho cuộc gọi.
8.Outgoing-Call-Reply


Outgoing-Call-Reply là tin nhắn gửi bởi PAC tới PNS để trả lời khi
nhận được Outgoing-Call-Request. Tin nhắn trả lời sẽ bao gồm kết
quả của cố gắng Outgoing-Call từ phía PNS. Nó cũng bao gồm thông
tin báo cho PNS những tham số để sử dụng một cuộc gọi ra ngoài. Nó
cung cấp những thông tin về tốc độ truyền để truyền tải dữ liệu tới
PAC cho phiên kết nối đó.

Trường
Length
PPTP Message Type
Magic Cookie
Reserved0
Call ID

Pear’s Call ID

Result Code

Giá trị và ý nghĩa
Tổng độ dài PPTP header trong octet.
Giá trị 1 với Control Message

0x1A2B3C4D
0
Giá trị phân biệt Tunnel được ấn định bởi
PAC cho phiên kết nối này. Nó được sử
dụng để tổng hợp và phân tích dữ liệu đi
qua Tunnel.
Trường này có giá trị Call ID của
Outboing-Call-Request. Nó được sử dụng
bởi PNS để xác thực Outgoing-CallRequest dã đến đích. Trường này cũng là
được sử dụng làm giá trị gửi đi trong GRE
header để tổng hợp và phân tích.
Giá trị này cho biết kết quả của OutgoingCall-Request :
• 1 ( Connected ) : Kết nối thực hiện


×