1. Trang chủ
  2. » Luận Văn - Báo Cáo

XÂy dựng chương trình remote desktop

47 459 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 47
Dung lượng 811,5 KB

Nội dung

Từ ý tưởng xây dựng một chương trình có khả năng tương tác với máy tính từ xa thông qua hệ thống mạng, chương trìnhRemote desktop được xây dựng, dựa theo mô hình Client-Server hỗ trợ các

Trang 1

LỜI MỞ ĐẦU

Sự phát triển như vũ bão của ngành công nghệ thông tin kéo theo đó là các dịch vụmạng ngày càng phát triển, mở rộng và hoàn thiện hơn, tuy vẫn tồn tại nhiều khuyếtđiểm song không ít tiện lợi từ công nghệ đem lại cho xã hội loài người sự nhanhchóng và chính xác Thư điện tử dần thay thế thư tay, các cuộc hội nghị truyềnhình với âm thanh hình ảnh trực tiếp giúp linh hoạt hóa công việc của tổ chức, đoànthể Người bác sĩ không phải trực tiếp đứng tại phòng mổ vẫn có thể thực hiện caphẫu thuật với sự chính xác cao, và độ an toàn tuyệt đối… còn rất nhiều lợi ích màcông nghệ thông tin đem lại cho chúng ta, vậy dựa vào đâu mà công nghệ có thểthực hiện được những điều tưởng chừng không thể trong một tích tắc như vậy? Ngôn ngữ lập trình là một phần không thể thiếu trong việc xây dựng nên một thếgiới công nghệ linh hoạt và mạnh mẽ Không gian làm việc Microsoft Net tổng hợpbởi bốn bộ ngôn ngữ lập trình: C#, VB.NET, Managed C++, and J# NET ở đó có

sự chồng gối lên nhau của các ngôn ngữ, và được định nghĩa trong FCL (frameworkclass library) Hỗ trợ cho lập trình viên phát triển các ứng dụng mạng với kíchthước nhẹ và mạnh mẽ trong xử lý

Dựa trên kiến thức lập trình mạng với C#, sự đa dạng của các dịch vụ mạng vớinhiều tính năng và đòi hỏi ngày càng cao Từ ý tưởng xây dựng một chương trình

có khả năng tương tác với máy tính từ xa thông qua hệ thống mạng, chương trìnhRemote desktop được xây dựng, dựa theo mô hình Client-Server hỗ trợ các tínhnăng cơ bản tương tác với máy tính từ xa như tắt máy, khởi động lại máy, ngủ đông,khóa máy, chạy một số ứng dụng, gửi thông điệp, gửi một file hay lấy 1 file từ máyđang điều khiển… sử dụng ngôn ngữ lập trình C#

Trong quá trình xây dựng chương trình không tránh khỏi sai sót kính mong các thầy

cô và các bạn đóng góp ý kiến xây dựng để nhóm hoàn thiện hơn

Nhóm 2_MM02A

CHƯƠNG 3 CƠ SỞ LÝ THUYẾT VỀ NET 2

Trang 2

CHƯƠNG 2 : LẬP TRÌNH MẠNG TRONG NET FRAMEWORK 7

2.1 Sử dụng các lớp hỗ trợ được xây dựng từ lớp Socket 7

2.2 Socket không đồng bộ 10

2.3 Sử dụng Thread trong các ứng dụng mạng 14

CHƯƠNG 3: CHƯƠNG TRÌNH REMOTE DESKTOP 18

3.1 iới thiệu giao thức Remote Desktop: 18

3.2 cơ chế hoạt động của Remote Desktop: 19

3.3 Chương trình: 23

3.4 Hướng dẫn sử dụng 42

KÊT LUẬN 46

TÀI LIỆU THAM KHẢO 47

CHƯƠNG 3 CƠ SỞ LÝ THUYẾT VỀ NET

1.1 Giới thiệu về ngôn ngữ C#:

Microsoft Net không phải là một ngôn ngữ lập trình, đó là một không gian làm việc tổng hợp bởi bốn bộ ngôn ngữ lập trình: C#, VB.NET, Managed C++, and J# NET

ở đó có sự chồng gối lên nhau của các ngôn ngữ, và được định nghĩa trong FCL (framework class library)

Microsoft Net bao gồm 2 phần chính: Framework và Intergrated Development Enviroment (IDE) Framework cung cấp những gì cần thiết và căn bản, là khuôn dạng hay môi trường hỗ trợ các hạ tầng cơ sở theo một quy ước nhất định để công việc được thuận tiện IDE cung cấp một môi trường giúp chúng ta triển khai dễ

Trang 3

Thành phần Framework là quan trọng nhất NET là cốt lõi và tinh hoa của môitrường, còn IDE chỉ là công cụ để phát triển dựa trên nền tảng đó thôi Trong NETtoàn bộ các ngôn ngữ C#, Visual C++ hay Visual Basic.NET đều dùng cùng mộtIDE.

Microsoft NET là nền tảng cho việc xây dựng và thực thi các ứng dụng phân tánthế hệ kế tiếp Bao gồm các ứng dụng từ client đến server và các dịch vụ khác Một

số tính năng của Microsoft NET cho phép những nhà phát triển sử dụng như sau:

• Một mô hình lập trình cho phép nhà phát triển xây dựng các ứng dụng dịch vụ webvà

ứng dụng client với Extensible Markup Language (XML)

• Tập hợp dịch vụ XML Web, như Microsoft NET My Services cho phép nhà pháttriển đơn giản và tích hợp người dùng kinh nghiệm

• Cung cấp các server phục vụ bao gồm: Windows 2000, SQL Server, và BizTalkServer, tất cả điều tích hợp, hoạt động, và quản lý các dịch vụ XML Web và cácứng

Trang 4

1.2 Kiến trúc Net

Mô hình kiến trúc của Net:

.NET Framework là một platform mới làm đơn giản việc phát triển ứng dụngtrong môi trường phân tán của Internet .NET Framework được thiết kế đầy đủ đểđáp ứng theo quan điểm sau:

Để cung cấp một môi trường lập trình hướng đối tượng vững chắc, trong

đó mã nguồn đối tượng được lưu trữ và thực thi một cách cục bộ Thực thi cục bộnhưng được phân tán trên Internet, hoặc thực thi từ xa

Để cung cấp một môi trường thực thi mã nguồn mà tối thiểu được việcđóng gói phần mềm và sự tranh chấp về phiên bản

Để cung cấp một môi trường thực thi mã nguồn mà đảm bảo việc thực thi

an toàn mã nguồn, bao gồm cả việc mã nguồn được tạo bởi hãng thứ ba hay bất cứhãng nào mà tuân thủ theo kiến trúc NET

Trang 5

Để làm cho những người phát triển có kinh nghiệm vững chắc có thể nắmvững nhiều kiểu ứng dụng khác nhau Như là từ những ứng dụng trên nền Windowsđến những ứng dụng dựa trên web.

Để xây dựng tất cả các thông tin dựa triên tiêu chuẩn công nghiệp để đảmbảo rằng mã nguồn trên NET có thể tích hợp với bất cứ mã nguồn khác

.NET Framework có hai thành phần chính: Common Language Runtime(CLR) và thư viện lớp NET Framework CLR là nền tảng của NET Framework.Phát triển ứng dụng Client

Những ứng dụng client cũng gần với những ứng dụng kiểu truyền thống đượclập trình dựa trên Windows Đây là những kiểu ứng dụng hiển thị những cửa sổ haynhững form trên desktop cho phép người dùng thực hiện một thao tác hay nhiệm vụnào đó Những ứng dụng client bao gồm những ứng dụng như xử lý văn bản, xử lýbảng tính, những ứng dụng trong lĩnh vực thương mại như công cụ nhập liệu, công

cụ tạo báo cáo Những ứng dụng client này thường sử dụng những cửa sổ, menu,toolbar, button hay các thành phần GUI khác, và chúng thường truy cập các tàinguyên cục bộ như là các tập tin hệ thống, các thiết bị ngoại vi như máy in

Một loại ứng dụng client khác với ứng dụng truyền thống như trên là ActiveXcontrol (hiện nay nó được thay thế bởi các Windows Form control) được nhúng vàocác trang web trên Internet Các ứng dụng này cũng giống như những ứng dụngclient khác là có thể truy cập tài nguyên cục bộ

Những lớp NET Framework chứa trong NET Framework được thiết kế choviệc sử dụng phát triển các GUI Điều này cho phép người phát triển nhanh chóng

và dễ dàng tạo các cửa sổ, button, menu, toolbar, và các thành phần khác trong cácứng dụng được viết phục vụ cho lĩnh vực thương mại

1.3 Ngôn ngữ C#

Ngôn ngữ C# khá đơn giản, chỉ khoảng 80 từ khóa và hơn mười mấy kiểu dữliệu được xây dựng sẵn Tuy nhiên, ngôn ngữ C# có ý nghĩa cao khi nó thực thi

Trang 6

những khái niệm lập trình hiện đại C# bao gồm tất cả những hỗ trợ cho cấu trúc,thành phần component, lập trình hướng đối tượng.

Phần cốt lõi hay còn gọi là trái tim của bất cứ ngôn ngữ lập trình hướng đốitượng là sự hỗ trợ của nó cho việc định nghĩa và làm việc với những lớp Những lớpthì định nghĩa những kiểu dữ liệu mới, cho phép người phát triển mở rộng ngôn ngữ

để tạo mô hình tốt hơn để giải quyết vấn đề Ngôn ngữ C# chứa những từ khóa choviệc khai báo những kiểu lớp đối tượng mới và những phương thức hay thuộc tínhcủa lớp, và cho việc thực thi đóng gói, kế thừa, và đa hình, ba thuộc tính cơ bản củabất cứ ngôn ngữ lập trình hướng đối tượng

Trong ngôn ngữ C# mọi thứ liên quan đến khai báo lớp điều được tìm thấytrong phần khai báo của nó Định nghĩa một lớp trong ngôn ngữ C# không đoi hỏiphải chia ra tập tin header và tập tin nguồn giống như trong ngôn ngữ C++ Hơn thếnữa, ngôn ngữ C# hỗ trợ kiểu XML, cho phép chèn các tag XML để phát sinh tựđộng các document cho lớp

Ngôn ngữ C# cung cấp những đặc tính hướng thành phần oriented), như là những thuộc tính, những sự kiện Lập trình hướng thành phầnđược hỗ trợ bởi CLR cho phép lưu trữ metadata với mã nguồn cho một lớp

Trang 7

(component-CHƯƠNG 2 : LẬP TRÌNH MẠNG TRONG NET FRAMEWORK

2.1 Sử dụng các lớp hỗ trợ được xây dựng từ lớp Socket

2.1.1 Lớp TCPClient

Dùng giao thức này thì hai bên không cần phải thiết lập kết nối trước khi gửi

do vậy mức dộ tin cậy ko cao Để đảm bảo độ tin cậy trong các ứng dụng mạngngười ta còn sử dụng một giao thức khác gọi là giao thức có kết nối: TCP (transportcontrol protocol) Để lập trình theo giao thức TCP, MS.NET cung cấp hai lớp có tên

TcpClient (IPEndPoint) Tạo một TcpClient và gắn cho nó một

EndPoint cục bộ (gán địa chỉ máy cục bộ và

số hiệu cổng để sử dụng trao đổi thông tin vềsau)

TcpClient (RemoteHost: String

Int32)

Tạo một đối tượng TcpClient và kết nối đếnmột máy có địa chỉ và số hiệu cổng đượctruyền vào RemoteHost có thể là địa chỉ IPchuẩn hoặc tên máy

Một số thuộc tính:

Name Description

Available Cho biết số byte đã nhận về từ mạng và có sẵn để đọc

Client Trả về socket ứng với TCPClient hiện hành

Trang 8

Connected Trạng thái cho biết đã kết nối được đến server hay chưa ?

Một số phương thức:

Close Giải phóng đối tượng TcpClient nhưng không đóng

kết nốiConnect (RemoteHost,

Port)

Kết nối đến một máy TCP khác có tên và số hiệucổng

GetStream Trả về NetworkStream để từ đó giúp ta gửi hay nhận

dữ liệu (thường làm tham số khi tạo StreamReader

và StreamWriter)

Khi đã gắn vào StreamReader vá StreamWriter rồi thì

ta có thể gửi và nhận dữ liệu thông qua các phươngthức Readln, writeline tương ứng của các lớp này

Trang 9

Name Description

AcceptTcpClient Chấp nhận một yêu cầu kết nối đang chờ (ứng dụng sẽ dừng tại

câu lệnh này cho đến khi nào có một kết nối đến)AcceptSocket Chấp nhận một yêu cầu kết nối đang chờ

Pending Cho biết liệu có kết nối nào đang chờ đợi không? ( True = có).Start Bắt đầu lắng nghe các yêu cầu kết nối

2.1.3 Lớp UDPClient

Giao thức UDP (user datagram protocol hay user define protocol) là một giaothức phi kết nối có nghĩa là một bên có thể gửi dữ liệu cho bên kia mà không cầnbiết là bên đó có sẵn sàng hay chưa? Giao thức này không tin cậy bằng giao thứcTCP nhưng tốc độ của nó nhanh và dễ cài đặt ngoài ra, với giao thức UDP ta còn

có thể gửi được gói tin quảng bá đến nhiều máy

Trong NET, lớp UDPClient đóng gói các chức năng của giao thức UDP.Constructor method Description

UdpClient () Tạo một đối tượng (thể hiện) mới của lớp

UDPClient

UdpClient (AddressFamily) Tạo một đối tượng mới của lớp UDPClient

Thuộc một dòng địa chỉ được chỉ định

UdpClient (Int32) Tạo một UdpClient và gắn một cổng cho nó

UdpClient (IPEndPoint) Tạo một UdpClient và gắn một IPEndPoint

Trang 10

trạm từ xa mặc định.

PUBLIC Method

BeginReceive Nhận dữ liệu không đồng bộ từ máy tính từ xa

BeginSend Gửi không đồng bộ dữ liệu tới máy ở xa

Connect Thiết lập một default remote host

EndReceive Kết thúc nhận dữ liệu không đồng bộ ở trên

EndSend Kết thúc việc gửi dữ liệu không đồng bộ ở trên

Receive Nhận dữ liệu (đồng bộ) do máy tính ở xa gửi

Send Gửi dữ liệu (đồng bộ) cho máy ở xa

2.2 Socket không đồng bộ

2.2.1 Mô hình xử lý sự kiện của Windows

Mô hình sử lý sự kiện được thể hiện qua mô hình sau:

Trang 11

Thông qua mô hình này ta có thể ủy nhiệm cho môt thủ tục nào đó thực hiện

khi sự kiện sảy ra trên Control

Bắt đầu bằng End chỉ chức năng hoàn thành khi AsyncCallback đươc gọi

Requests Started By … Description of Request Requests Ended BY …BeginAccept () To accept an incoming

connection

EndAccept ()BeginConnect () To connect to a remote host EndConnect ()

Trang 12

BeginReceive () To retrieve data from a socket EndReceive ()

BeginReceiveFrom () To retrieve data from a specific

remote host

EndReciveFrom()

BeginSend () To send data from a socket EndSend ()

BeginSendTo () To send data to a specific

remote host

EndSendTo ()

Để chấp nhận kết nối bất đồng bộ ta sử dụng phương thức BeginAccept() vàEndAccept() như sau:

Phương thức BeginAccept() và EndAccept()

IAsyncResult BeginAccept(AsyncCallback callback, object state)

Socket EndAccept(IAsyncResult iar);

Để thiết lập phương thức kết nối theo cách bất đồng bộ ta sử dụng phươngthức BeginConnect() và EndConnect() như sau:

Phương thức BeginConnect() và EndConnect()

Socket(AddressFamily.InterNetwork,SocketType.Stream, ProtocolType.Tcp);

IPEndPoint iep =new IPEndPoint(IPAddress.Parse("127.0.0.1"), 9050);newsock.BeginConnect(iep, new AsyncCallback(Connected), newsock);Trong đó phương thức Connected thường được viết như sau:

public static void Connected(IAsyncResult iar) {

Socket sock = (Socket)iar.AsyncState;

Trang 13

Để gửi dữ liệu bất đồng bộ chúng ta làm như sau:

Phương thức BeginSend() và EndSend()

BeginSend()

IAsyncResult BeginSend(byte[] buffer, int offset, int size, SocketFlagssockflag, AsyncCallback callback, object state)

EndSend()

int EndSend(IAsyncResult iar)

Trong đó phương thức SendData thường được viết như sau:

private static void SendData(IAsyncResult iar) {

Socket server = (Socket)iar.AsyncState;

int sent = server.EndSend(iar);

}

Tương tự như giao thức hướng kết nối nếu ta sử dụng gửi dữ liệu theo giaothức không hướng kết nối chúng ta cũng thực hiện tương tự như sau:

Phương thức BeginSendTo() và EndSendTo()

IAsyncResult BeginSendTo(byte[] buffer,int offset,int size,SocketFlagssockflag, EndPoint ep, AsyncCallback callback, object state)

Để nhận dữ liệu bất đồng bộ ta thực hiện như sau:

Nhận dữ liêu với giao thức hướng kết nối:

Phương thức BeginRecieve và EndRecive()

sock.BeginReceive(data, 0, data.Length, SocketFlags.None, new

AsyncCallback(ReceivedData), sock);

Với ReceivedData được định nghĩa như sau:

void ReceivedData(IAsyncResult iar) {

Socket remote = (Socket)iar.AsyncState;

Trang 14

int recv = remote.EndReceive(iar);

string receivedData = Encoding.ASCII.GetString(data, 0, recv);

Console.WriteLine(receivedData);

}

Nhận dữ liệu bất đồng bộ với giao thức không hướng kết nối

Phương thức BeginReceiveFrom() và EndReceiveFrom()

sock.BeginReceive(data,0,data.Length,SocketFlags.None,refiep,new

AsyncCallback (ReceiveData) , sock);

void ReceiveData(IasyncResult iar){

Socket remote = (Socket)iar.AsyncState;

int recv = remote.EndReceiveFrom(iar);

string stringData = Encoding.ASCII.GetString(data, 0,

Tuyến (Thread ): trong hệ thống một tiến trình có thể có một hoặc nhiều chuỗithực hiện tách biệt khác nhau và có thể chạy đồng thời mỗi chuỗi thực hiện này

Trang 15

được gọi là 1 tuyến (Thread) Trong 1 ứng dụng Thread khởi tạo đầu tiên gọi làThread sơ cấp hay Thread chính.

2.3.2 Sử dụng Thread trong chương trình Net

Để sử dụng Thread trong NET ta sử dụng namespace System.Threading

Join () Buộc chương trình phải chờ cho thread kết thúc (Block) thì

mới thực hiện tiếp (các câu lệnh đứng sau Join)

Resume () Tiếp tục chạy thread đã tạm ngừng – suspended

Sleep () Static method: tạm dừng thread trong một khoảng thời gian.Start () Bắt đầu chạy (khởi động) một thread Sau khi gọi phương thức

này, trạng thái của thread chuyển từ trạng thái hiện hành sangRunning

Suspend () Tạm ngưng thread (phương thức này được loại khỏi phiên bản

VS.NET 2005)Một số thuộc tính thường dùng:

Trang 16

ít CPU cho thread) Cao nhất là 4, thấp nhất là 0.

ThreadState Lấy về trạng thái của thread (đang dừng, hay đang chạy…)Tạo một tuyến trong C#

Trang 17

2.3.3 Sử dụng Threadpool trong các chương trình Net

BindHandle () Binds an operating system handle to

the thread poolGetAvailableThreads() Gets the number of worker threads

available for use in the thread poolGetMaxThreads () Gets the maximum number of worker

threads available in the thread poolQueueUserWorkItem () Queues a user delegate waiting for a

WaitHandle objectUnsafeQueueUserWorkItem () Queues an unsafe user delegate to the

thread pool but does not propagate thecalling stack onto the worker threadUnsafeRegisterWaitForSingleObject () Registers an unsafe delegate waiting

for a WaitHandle object

Trang 18

CHƯƠNG 3: CHƯƠNG TRÌNH REMOTE DESKTOP

3.1 iới thiệu giao thức Remote Desktop:

Giao thức Remote Desktop là kết nối cơ bản với giao diện đồ họa được thiết kế đểtạo điều kiện thuận lợi cho người sử dụng tương tác với một hệ máy tính từ xa bằngcách cập nhật những thông tin đồ họa đến từ máy tính từ xa tới người sử dụng vàđồng bộ thông tin quản lý của người dùng tương tác đến máy tính ở xa, giống nhưđang ngồi tại chính máy đó

Giao thức này cũng cung cấp một cơ chế cho phép đơn giản hóa việc truyền thôngchuyên dụng mở rộng giữa người sử dụng máy tính trực tiếp và những thành phầnchạy trên máy tính ở

Trang 19

3.2 cơ chế hoạt động của Remote Desktop:

3.2.1 Connection Initiation

Client thực hiện kết nối đến server bằng cách gửi gói tin yêu cầu kết nối PDUx.224 Server phản hồi lại với gói xác nhận kết nối x.224 Từ điểm này tất cả các dữliệu giữa client và server sẽ được bao bọc trong gói x.224 PDU

3.2.2 Basic Settings Exchange

sự trao đổi cấu hình giữa client và server được thực hiện thông qua việc sử dụng kếtnối ban đầu MCS (MCS connect Initial) và gói phúc đáp MCS PDUs (MCSConnect Reponse.) Một kết nối PDU ban đầu chứa yêu cầu kết nối thời gian thựcGCC (GCC Conference Create Request), trong khi một kết nối phúc đáp PDU chứamột phúc đáp kết nối GCC (GCC Conference

Create Response) Hai gói Điều khiển Hội nghị Chung “Generic ConferenceControl” (GCC) này chứa đựng ghép nối những khối cấu hình cài đặt

dữ liệu (dữ liệu lõi, dữ liệu bảo mật và dữ liệu mạng…) nào được đọc bởi client vàServer

Trang 20

3.2.3 Channel Connection

Client gửi một MCS Erect Domain Request PDU, tiếp theo là một MCS

Attach User Request PDU đính kèm danh tính người dùng chính với miền Serverphúc đáp bằng MCS Attach User Response PDU với id kênh người phục vụ client

sẽ tiến hành kết nối vào kênh người sử dụng, kênh nhập/xuất (I/O) và tất cả cáckênh ảo (kênh nhập/xuất, IDs kênh ảo cố định tồn tại từ dữ liệu nhúng trong góiGCC) và sử dụng tập hợp MCS Channel Join Request PDUs Server xác nhận lạimỗi kênh với MCS Channel Confirm PDU (Client chỉ gửi gói Channel JoinRequest sau khi đã nhận Channel Join Confirm PDU từ yêu cầu gửi trước đó.)

Từ điểm này, tất cả dữ liệu được gửi kế tiếp từ client đến server đều được đóng góitrong MCS Send Data Request PDU, trong khi dữ liệu gửi đi từ server đến clientđược đóng gói trong MCS Send Data Indication PDU Đây là dữ liệu được đóng góibởi Dữ liệu X.224 PDU

Trang 21

3.2.4 RDP Sercurity Commencement

Nếu phương pháp tiêu chuẩn bảo mật RDP đang được sử dụng và mã hóa có hiệulực (điều này được xác định bằng cách kiểm tra các dữ liệu nhúng trong GCCConference

Create Response packet) sau đó client gửi một Security Exchange PDU có chứa mộtmật mã 32-byte ngẫu nhiên số đến Server Con số này ngẫu nhiên được mã hóa vớikhóa công khai của máy chủ (khóa công khai của máy chủ, cũng như tạo ra mộtmáy chủ 32-byte số ngẫu nhiên, được cả hai thu được từ các dữ liệu nhúng trongHội nghị GCC gói Tạo đáp ứng) Các client và server sau đó sử dụng hai 32-byte sốngẫu nhiên để tạo ra các phím phiên sử dụng để mã hóa và xác nhận tính toàn vẹncủa lưu lượng RDP tiếp theo

Từ điểm này, tất cả lưu lượng RDP tiếp theo có thể được mã hóa và một tiêu đề anninh được bao gồm với các dữ liệu nếu mã hóa có hiệu lực (các Thông tin kháchhàng và PDUs cấp Giấy phép có một ngoại lệ trong họ luôn luôn có một tiêu đề anninh) Các Header Security sau các X.224 và MCS Headers và cho biết dù dữ liệuđính kèm được mã hóa Ngay cả khi mã hóa có hiệu lực máy chủ đến lưu lượngkhách hàng có thể không phải luôn luôn được mã hóa, trong khi khách hàng đếnmáy chủ lưu lượng truy cập sẽ luôn luôn được mã hóa bởi Microsoft RDP triển khai(mã hóa của PDUs cấp phép là tùy chọn)

3.2.5 Secure Settings Exchange:

(Sự Trao đổi những thiết đặt An toàn): An toàn dữ liệu máy client (như làusername, mật khẩu, auto-reconnect cookie) là gửi đến server sử dụng Client InfoPDU

3.2.6 Licensing:

Mục đích của việc trao đổi cấp phép để đồng bộ chung một giấy phép từ server đếnclient Client cần lưu trữ giấy phép này và thông qua những kết nối đó gửi giấyphép đến server xác thực.Tuy nhiên, trong một só trường hợp client không được cấp

Trang 22

giấy phép đến nơi lưu trữ Trên thực tế, những gói được trao đổi trong thời gian phanày của giao thức phụ thuộc cơ chế cấp phép từ server.

3.2.7 Capabilities Negotiation:

Server gửi tập hợp những khả năng mà nó hỗ trợ đến client trong mộtDemand Active PDU Client trả lời với những khả năng có thể bằng cách gửi góiConfirm Active PDU

Trang 23

3.3 Chương trình:

3.3.1 Yêu cầu bài toán:

Dựa trên nên tảng giao thức Remote Desktop có sẵn, tiến hành xây dựng mô hìnhClient-Server hỗ trợ các tính năng cơ bản tương tác với máy tính từ xa như tắt máy, khởi động lại máy, ngủ đông, khóa máy, chạy một số ứng dụng, gửi thông điệp, gửi một file hay lấy 1 file từ máy đang điều khiển… sử dụng ngôn ngữ lập trình C#

3.3.2 Giao diện chương trình:

Server:

Ngày đăng: 18/08/2015, 12:36

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w