Điều khiển luồng

Một phần của tài liệu Quản trị hạ tầng mạng phần cứng căn bản Truyền thông và mạng máy tính (Trang 56)

1.3.7 I GIAO THỨC UDP

UDP - So sánh giữa chỉ phí thấp và độ tin cậy

UDP là một giao thức đơn giản ở lớp Transport, nó chỉ cung cấp những tính năng cơ bản để vận chuyển dữ liệu. Chi phí vận chuyển của nó thấp hơn nhiều so với giao thức TCP. Bởi vì nó khơng có các cơ chế giống như TCP chẳng hạn như: thiết lập kết nối trước khi truyền dữ liệu thực sự, truyền lại đổi với những dữ liệu bị mất, đánh số thứ tự các segment và điều khiển luồng. Điều này khơng có nghĩa là các ứng dụng sử dụng giao thức ƯDP để vận chuyển thì ln ln khơng tin cậy. Nó chỉ đơn giản là làm sao vận chuyển dữ liệu cho nhanh và tính năng tin cậy được thực hiện ở lớp Application nếu cần.

Một số ứng dụng, như trò chơi trực tuyến hay VoIP, có thể chấp nhận mất một vài dữ liệu. Nếu các ứng dụng này dùng TCP thì độ trễ lớn do TCP phát hiện dữ liệu bị mất và truyền lại. Độ trễ này sẽ gây ra nhiều thiệt hại cho ứng dụng hơn là việc mất một vài dữ liệu nhỏ. Một vài ứng dụng, như DNS, sẽ truy vấn lại nếu không nhận một trả lời từ DNS server và vì thế chúng khơng cần sử dụng TCP để phân phát thông điệp tin cậy.

Port nguồn được cấp phát động và ngẫu nhiên cũng giúp ích cho việc bảo mật. Nếu có một quy định trước đối với việc cấp phát port nguồn, một người có ý đồ xấu có thể dễ dàng truy cập đến một client bằng cách cố gắng kết nối đến port thường được mở nhất. Do UDP không tạo session, nên ngay từ khi dữ liệu đã được sẵn sàng để gửi và port được xác định, UDP có thể tạo ngay thành datagram và chuyển nó đến lófp Network để đánh địa chỉ và các lớp thấp hơn để gửi trên mạng.

Nhớ rằng, khi một client đã chọn port nguồn và đích, cặp port này được dùng trong header của tất cả datagram trong giao dịch này. Đối với dữ liệu của server phản hồi cho client, port nguồn và đích trong header được đảo lại.

1 .4 I L Ớ P A PPLIC A TIO N

Hầu hết các giao thức của lớp Application trong mơ hình TCP/IP đều tích họp các tính năng của lóp 5, 6 và 7 của mơ hình OSI. Chúng chỉ ra định dạng và điều khiển thông tin cần thiết cho các tính năng giao tiếp chung.

1 .4 .1 I CÁC ỨNG DỤNG - GIAO DIỆN ĐÊ GIAO TIẾP GIỮA CÁC MẠNG

Các tính năng của các giao thức trong lớp Application cho phép chúng ta giao tiếp với nhau qua mạng, khi chúng ta mở một ứng dụng chẳng hạn như một trình duyệt web hay một cửa sổ chat, thì mỗi ứng dụng được khởi động sẽ kích hoạt một tiến trình trong hệ thống. Tiến trình này được đưa vào bộ nhớ của thiết bị.

Ở lóp Application, có hai dạng chương trình hoặc tiến trình mà chúng cung cấp sự giao tiếp qua mạng là: ứng dụng mạng và dịch vụ mạng.

Các ứng dụng mạng

Các ứng dụng mạng là các chương trình phần mềm được người sử dụng để giao tiếp với nhau qua mạng. Chúng thực thi các giao thức ở lớp Application và có thể giao tiếp trực tiếp với các lớp thấp hơn của chồng giao thức. Một vài ứng dụng mạng như Outlook Express, Google,...

Các dịch vụ mạng

Muốn sử dụng các ứng dụng mạng để trao đổi thông tin như: download file, upload file, gửi/nhận mail,... can phải có sự giúp đỡ của các dịch vụ mạng ở lóp Application như dịch vụ mail (SMTP/POP), dịch vụ web (HTTP),... Các dịch vụ này chạy trong hậu cảnh và người dùng khơng nhìn thấy được. Nhưng chúng đóng một vai trò rất quan trọng trong việc cung cấp sự giao tiếp qua mạng.

Các ứng dụng hay dịch vụ mạng sử dụng các giao thức. Các giao thức này định nghĩa các chuẩn và định dạng dữ liệu được dùng. Nếu khơng có các giao thức, mạng dữ liệu khơng có cách chung để định dạng và truyền dữ liệu.

1 .4 .2 I MỒ HÌNH CLIENT-SERVER

Mơ hình client-server là mơ hình phổ biến nhất hiện nay. Các chưong trình server chấp nhận tất cả các yêu cầu hợp lệ đến từ mọi nơi trên mạng, sau đó nó xử lý yêu cầu và trả kết quả về cho máy yêu cầu. Một chương trình được gọi là Client khi nó gửi các u cầu tới máy có chương trình server và chờ đợi câu trả lời từ server.

Một ví dụ về mơ hình client/server: Trong cơng ty có một mail server. Mail server giống như là bưu điện là nơi đại diện nhận mail từ những nơi khác gửi đến những người trong công ty hay từ những nhân viên trong cơng ty gửi ra ngồi và chuyển đen hộp thư của từng nhân viên. Khi có nhu cầu kiểm tra xem có ai gửi mail đến cho mình không, người dùng sử dụng một chương trình mail Client gửi một yêu cầu đến mail server. Mail server trả lời bằng cách gửi các mail của nhân viên đó mà nó đã nhận được đến cho mail Client.

Chương trình server và Client tương tác vớ i nhau bằng các thông điệp thông qua một cổng truyền thông. Để một chương trình server và một chương trình Client giao tiếp được với nhau thì giữa chúng phải có một chuẩn để truyền thông, chuẩn này được gọi là giao thức. N ếu một chương trình Client nào muốn yêu cầu lấy thơng tin từ server thì nó phải tn theo giao thức mà server đó đưa ra.

C lie n t/S e rv e r M odel

R e so u rce s are stored on the A client is a hardware/software

server. com bination that people use

directly.

Hình 29: Client download fde từ server

UDP d oes not establish a connection before sending data.

Hình 26: Vận chuyển dừ liệu với giao thức UDP

Sắp xếp lại các UDP Datagram

Bởi vì UDP là giao thức không kết nối, các sesseion không được thiết lập trước khi cuộc trao đổi diễn ra giống như giao thức TCP. Khi một ứng dụng có dữ liệu muốn gửi, đơn giản là nó cứ gửi dữ liệu ra mạng.

Having taken different routes to the destination, datagrams arrive out of order.

Hình 27: ƯDP: khơng kết nổi và không tin cậy

Nhiều ứng dụng UDP có khối lượng dữ liệu nhỏ đặt vừa khớp trong một gói. Tuy nhiên, có những ứng dụng sẽ gửi khối lượng dữ liệu rất lớn. Khi đó, giống như giao thức TCP, ƯDP cũng phân dữ liệu này ra thành những đoạn nhỏ. Mỗi đoạn này được

Datagram 2 Datagram 6 Datagram 4 Out of order datagrams are not re-ordered. Lost datagrams are i not ! re-sent. lỆitMNiMlÌMtaKa»».. Data Data is divided into datagrams. Ijpljlj HHriki1 Datagram 2 Datagram 3 Datagram 4 'f'fMagramS Datagram 6

xem như một datagram. Thuật ngữ segment và datagram thỉnh thoảng được dùng hốn đổi cho nhau để mơ tả một PDU của lớp Transport.

Khi có nhiều datagram được gửi đến đích, chúng có thể được truyền trên nhiều đường đi khác nhau và đến đích khơng đúng thứ tự. Trong ƯDP header khơng có sequence number và UDP cũng không theo dối việc truyền các datagram nhu thế nào giống nhu TCP đã làm. Do đó, ƯDP khơng có cách nào để sắp xếp lại các datagram thành một chuỗi dữ liệu ban đầu mà máy gửi đã gửi.

Các tiến trình trên Server và yêu cầu của client

Sewer

DNS request

Server Applications

Client DNS requests will be received on Port 53. Client RADIUS requests will be

received on Port 1812.

Client 2

RADIUS request

Hình 28: UDP server lắng nghe các request từ các client

Giống nhu các ứng dụng dựa trên TCP, các ứng dụng trên server phổ biến dựa trên UDP cũng được gán một port trong Well Known hoặc Registered. Khi các ứng dụng hay tiến trình này đang chạy, chúng sẽ chấp nhận dữ liệu mà nó phù hợp với port được gán. Khi UDP nhận một datagram, nó chuyển dữ liệu đến ứng dụng thích hợp dựa trên port đích trong datagram.

Các tiến trình trên UDP client

Hầu hết các cuộc trao đổi giữa client và server thường được bắt đầu từ phía client, client bắt đầu bằng cách gửi yêu cầu đến server mà mình muốn truy cập. Giống như các ứng dụng client/server dựa trên TCP, các ứng dụng client dựa vào UDP cũng được cấp phát động một port ngẫu nhiên lớn hơn 1024 và port này được xem như là source port trong UDP header. Port đích sẽ là port của ứng dụng server mà client muốn truy cập đển.

1.4.3 I MẠNG NGANG HÀNG (PEER-TO-PEER)

Mạng peer-to-peer là mạng mà trong đó có hai hay nhiều máy tính được kết nối với nhau nhằm mục đích chia sẻ và truy cập các tài nguyên như máy in, tập tin mà không cần đến máy chủ hay phần mem server chuyên biệt. Mỗi thiết bị cuối (xem như một peer) có thể đóng vai trị vừa là một server vừa là một client. Một máy tính có thế đảm đương vai trò một server đổi với một giao dịch nào đó, đồng thời đóng vai trị client đối với một giao dịch khác. Vai trò client và server được xét trên một giao dịch cụ thể. Không giống như mơ hình clienưserver, ở đó dữ liệu được lưu trữ tập trung trên các server chuyên trách, dữ liệu ở đây có thể được lưu trữ ở bất kỳ nơi nào trên bất kỳ thiết bị nào kết nối vào mạng. Mỗi người có thể cấu hình máy tính của mình để chia sẻ file, cho phép trò chuyện trên mạng, hoặc chia sẻ một kểt nối Intern et,... Mơ hình này khơng có q trình đăng nhập trung tâm, nếu đã đăng nhập vào mạng bạn có thể sử dụng tất cả tài nguyên trên mạng. Truy cập vào các tài nguyên phụ thuộc vào người đã chia sẻ các tài nguyên đó, do vậy bạn có thể phải biết mật khẩu để có thể truy nhập được tới các tài nguyên được chia sẻ.

I need to access a file from the hard drive cm Peert. I also need to print a file that I recieved from Peerl, with a print request. Peerl Peer2 Print client File server Directly connected printer Print server fife client Hình 30: Mạng peer-to-peer Các ứng dụng peer-to-peer

Trong ứng dụng peer-to-peer, một thiết bị đóng cả hai vai trò client và server trong cùng một chuỗi giao tiếp và được xem là ngang nhau trong quá trình giao tiếp. Tuy nhiên, các ứng dụng peer-to-peer yêu cầu mỗi thiết bị cuối phải có một giao diện người dùng (user interface) và một dịch vụ chạy hậu cảnh (background). Khi bạn mở một ứng dụng peer-to-peer thì nó sẽ khởi động các dịch vụ cần thiết và mở ra một giao

diện người dùng. Sau đó, các thiết bị có thể trao đổi trực tiếp với nhau qua giao diện này.

Một vài ứng dụng p2p được triển khai trên các hệ thống lai (hybrid system), ở đây các tài nguyên được chia sẻ không được lưu tập trung nhưng các chỉ mục trỏ đến những nơi lưu trữ tài nguyên thì được lưu tập trung trong một thư mục. Trong một hybrid system, mỗi peer truy cập một server chỉ mục (index server) để lấy vị trí một tài nguyên được lưu trên một peer. Index server giúp kết nổi hai peer, nhưng khi đã kết nối được thì việc giao tiếp giữa hai peer khơng cần đến sự hỗ trợ của index server. Các ứng dụng p2p có thể được triển khai trên mạng peer-to-peer, mạng client/server và cả mạng Internet.

Client and server Client and server

Both clients simultaneously • Initiate a message • Receive a message Hình 31: Các úng dụng peer-to-peer 14.4 I MỘT SỐ DỊCH v ụ VÀ GIAO THỨC PHỔ BIẾN Ở LỚP APPLICATION Dịch vụ WWW và HTTP

HTTP, viết tắt là Hypertext Tranfer Protocol, là một trong những giao thức của họ giao thức TCP/IP và được sử dụng phổ biến nhất trên Internet.

Các bước cơ bản trong tiến trình truyền tải trang web đến màn hình của bạn được thể hiện như sau: •

• Người dùng gõ địa chỉ website vào trình duyệt. Trình duyệt web sẽ phân tích địa chỉ bạn vừa gõ vào làm 3 phần:

1. Giao thức (“http”)

2. Tên máy chủ (“www.cisco.com”) 3. Tên file (“index.htm”)

• Trình duyệt liên lạc với một máy chủ tên miền để chuyển đổi tên miền www.cisco.com sang địa chỉ IP, để có thể kết nối tới máy chủ có địa chỉ IP này. • Trình duyệt sẽ mở một kết nối tới web server có địa cỉ IP trên qua cổng 80. • Dựa vào giao thức HTTP, trình duyệt sẽ gửi câu lệnh GET tới web server, yêu

cầu tập tin http://www.cisco.com/index.html.

• Web server gửi đoạn văn bản dưới dạng HTML tới trình duyệt web

• Trình duyệt đọc các thẻ lệnh HTML và định dạng thành trang web và biểu diễn ra màn hình của bạn.

Hình 32: Giao thức HTTP

Mặc dù HTTP là giao thức linh động, mềm dẻo, nhưng nó khơng là một giao thức bảo mật. Các thơng tin giữa trình duyệt web và web server ở dưới dạng văn bản rõ ràng (plain text) nên có thể bị chặn và đọc. Do đó, rất nhiều web server đưa thêm các cơ chế bảo mật trong nhiều tiến trình xử lý.

Giao thức Secure HTTP (HTTPS) được sử dụng cho việc truy cập hay đưa thông tin đến web server. HTTPS có thể dùng chứng thực và mã hóa để bảo mật dữ liệu khi truyền dữ liệu giữa Client và server. HTTPS định thêm luật cho việc truyền giữa lớp Application và Transport.

E-mail đã trở thành một công cụ liên lạc vô cùng hữu hiệu trong cuộc sống hiện đại của chúng ta ngày nay do bởi tính đơn giản và tốc độ của nó. Tuy nhiên bên trong nó có bao nhiêu giao thức và dịch vụ khác nhau, Hai giao thức phổ biển ở. lóp Application là POP (Post Office Protocol) và SMTP (Simple Mail Transfer Protocol).

N gười sử dụng thường dùng các chương trình như O utlook Express, G m a il,...đ ể tạo, gửi mail và nhận m a il,...N h ữ n g chương trình này được gọi là mail Client. Tuy sử dụng chương trình mail Client để nhận và gửi mail, nhưng hai thao tác này là hai tiến trình riêng biệt truy cập đến hai dịch vụ khác biệt trên server.

Sender Recipient

Hĩnh 33: Các giao thức Email

SMTP Server

Mỗi khi bạn gửi một e-mail, mail client tương tác với SMTP server để xử lý việc gửi. SMTP server trên máy chủ của bạn có thể có giao tiếp với SMTP trên máy chủ khác để chuyển e-mail đó.

Send email

Is the recipient in my list of recipients?

No. Forward email to another server.

recipient@ doujain.comnjain.con

n SMTP/P0P3 Server SMTP/P0P3 Server Hĩnh 34: Hoạt động của SMTP POP3 server

Trên SMTP server bạn sẽ tạo ra các địa chỉ e-mail để cung cấp cho người dùng. Tương ứng với mỗi địa chỉ có một file văn bản. Khi một e-mail được gửi đến, POP3 server chỉ đơn giản là thêm chính email đó vào phần cuối của file người nhận.

Khi bạn duyệt email, mail client sẽ kết nối vào POP3 server qua cổng 110. POP3 server yêu cầu bạn cung cấp tên địa chỉ email của bạn và password. Sau khi bạn đăng nhập, POP3 server sẽ mở file văn bản của bạn và cho phép bạn truy xuất nó. Cũng giống như SMTP server. POP3 server cũng hiểu một tập họp các ký tự đơn giản như sau:

• USER: Nhập vào địa chỉ email. • PASS: Nhập mật mã.

• QUIT : Thốt khỏi POP3 server. • LIST: Liệt kê danh sách email.

• RETR: Lấy ra email của bạn và chuyển cho nó một con số. • DELE: Xóa một email.

Email dient của bạn sẽ kết nối vào POP3 server và gửi một tập hợp các lệnh để tải bản sao của các email của bạn về máy tính cục bộ. Thơng thường, email client sẽ xóa hết các email trên máy chủ trừ khi bạn bỏ tính năng đó.

Hĩnh 35: Hoạt động của POP3

Giao thức và dịch vụ FTP

FTP, là viết tắt File Transfer Protocol, là một trong những giao thức phổ biển của lớp Application. FTP được phát triển để truyền file qua mạng. Giống như HTTP, FTP là một dịch vụ client/server. Một FTP client là một ứng dụng chạy trên một máy tính và nó được sử dụng để tải về hoặc truyền lên các tập tin từ hoặc đến một FTP server. Một máy tính có một dịch vụ FTP server đang chạy trên đó được gọi là FTP server. FTP server là nơi lưu tập trung các tập tin.

Sự giao tiếp giữa FTP client và FTP server dựa trên hai kết nối. Client thiết lập kết nối

Một phần của tài liệu Quản trị hạ tầng mạng phần cứng căn bản Truyền thông và mạng máy tính (Trang 56)

Tải bản đầy đủ (PDF)

(184 trang)