Tải bản đầy đủ (.docx) (29 trang)

Đề cương ôn tập môn Internet và các giao thức

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 (951.13 KB, 29 trang )

Chương 1
Câu 1. OSI - TCP/IP
OSI
Tầng ứng dụng: bao hàm các ứng dụng truyền thống sử dụng dịch vụ của các tầng
thấp hơn. Nhờ sự trợ giúp của các giao thức tầng ứng dụng, người dùng có thể sử dụng
các ứng dụng của mình trên máy tính. Vd: HTTP, FTP, SMTP, POP3, Telnet
Tầng trình diễn: liên quan đến dạng thông tin được truyền đi. Nhiệm vụ của tầng
trình diễn là mã hóa dữ liệu được cấu trúc theo các định dạng của máy tính thành
luồng dữ liệu phù hợp cho truyền dẫn. Tầng trình diễn phía nhận giải mã dữ liệu đã
được nén thành dạng biểu diễn được yêu cầu. Tầng trình diễn giúp cả 2 máy tính hiểu
được ý nghĩa của luồng bit nhận được theo cùng 1 cách. Các chuẩn định dạng dữ liệu
của lớp 6 là GIF, JPEG, PICT, MP3, MPEG…
Tầng phiên: đảm bảo cho sự thành công trong truyền thông đầu-cuối giữa các máy
tính; cho phép sử dụng trên các máy khác nhau thực hiện thiết lập phiên làm việc với
nhau; truyền thông các dữ liệu, cung cấp 1 số dịch vụ mở rộng hữu ích cho các ứng
dụng; cung cấp các bit kiểm tra vào trong luồng dữ liệu, để phát hiện lỗi và truyền dữ
liệu lại từ điểm kiểm tra cuối cùng. Các giao thức trong lớp 5 sử dụng là NFS, X-
Window System, ASP.
Tầng vận chuyển: đảm bảo thường xuyên việc truyền dẫn từ đầu đén cuối không có
lỗi và các gói tin không bị mất trong quá trình truyền thông. Để thực hiện điều này,
trong tầng giao vận có thể bao gồm các thủ tục truyền lại hoặc thủ tục xác nhận. Các
giao thức phổ biến tại đây là TCP, UDP, SPX.
Tầng mạng: có những kiến thức về kiến trúc mạng và cùng với tầng mạng của các nút
nó phục vụ, các gói dữ liệu được định tuyến thông qua mạng để tới đích. Mỗi nút có
riêng 1 địa chỉ toàn cục (mạng). Các giao thức hay sử dụng ở đây là IP, IPX,
AppleTalk.
Tầng liên kết dữ liệu: tạo lập khung, gửi chúng tới kênh truyền vật lý thông qua tầng
vật lý; nhận khung, kiểm tra lỗi và chuyển khung không có lỗi lên tầng mạng. Tầng
lkdl phía nhận gửi tín hiệu xác nhận cho tầng lkdl phía truyền. Phía truyền có thể
truyền lại khung trong một khoảng thời gian nhất định nếu phía nhận không gửi tín
hiệu xác nhận. Vd: CSMA/CD, Token Ring.


Tầng vật lý: có nhiệm vụ truyền dẫn tín hiệu thông qua 1 kênh truyền thông, đảm bảo
bên nhận nhận chính xác tín hiệu đã được truyền đi.
TCP/IP
1
+ Tầng truy nhập mạng: Ánh xạ địa chỉ IP sang địa chỉ vật lý và đóng gói dữ liệu IP
vào khung.Dựa trên kiểu phần cứng và giao diện mạng sẽ xác định kết nối với phương
tiện vật lý của mạng.
+ Tầng liên mạng: chọn đường đi tốt nhất qua mạng cho các gói tin. Công việc xác
định đường đi tốt nhất và chuyển gói được thực hiện nhờ sự trợ giúp của các giao thức.
Vd: IP (đánh địa chỉ logic và định tuyến dữ liệu), ICMP (báo lỗi và kiểm soát), ARP
(xác định MAC từ IP), RARP (xác định IP từ MAC).
+ Tầng giao vận: cung cấp dịch vụ truyền tải từ trạm nguồn đến trạm đích. Tầng này
thiết lập kết nối logic giữa 2 điểm cuối của mạng là trạm gửi và trạm nhận. Các giao
thức giao vận phân mảnh và ghép dữ liệu của các ứng dụng tầng trên vào trong 1
luồng dữ liệu giữa các điểm cuối. Vd: TCP, UDP
+ Tầng ứng dụng: cung cấp các dịch vụ dưới dạng các giao thức cho ứng dụng của
người dung. Một số giao thức tiêu biểu là: FTP(dịch vụ hướng kết nối và tin cậy,cung
cấp truyền tệp giữa các hệ thống hỗ trợ FTP), Telnet(cho phép các phiên đăng nhập từ
xa giữa các máy tính ), FTTP(trao đổi các tài liệu siêu văn bản để hỗ trợ WEB),
SMTP(truyền thư điện tử giữa các máy tính), DNS(chuyển đổi tên miền thành các địa
chỉ IP), SNMP(quản trị từ xa các thiết bị mạng chạy TCP/IP).
Câu 2. Phân biệt mô hình client-server và peer-to-peer
Mô hình client-server:
• Luôn có 1 máy trạm hoạt động, gọi là máy chủ (server), nó phục vụ yêu cầu từ
nhiều máy trạm khác (client).
• Client có thể hoạt động liên tục hoặc không.
• Các máy khách không truyền thông trực tiếp với nhau.
• Server có địa chỉ IP tĩnh, và nó luôn hoạt động nên 1 máy khách có thể luôn kết
nối với máy chủ bằng việc gửi gói tin tới địa chỉ của máy chủ.
Ví dụ: Web, FTP, Telnet, email.

Tuy nhiên, trên thực tế, nếu chỉ có 1 máy chủ thì khi đồng thời nhiều kết nối tới
cùng 1 lúc, máy chủ sẽ không thể đáp ứng vào có thể bị sập. Vì vậy, ng ta
thường dùng cụm máy chủ (server farm - datacenter)
Mô hình peer-to-peer
• Có tối thiểu (hoặc không có) các server hạ tầng luôn hoạt động
• Ứng dụng khai thác truyền thông trực tiếp giữa các trạm kết nối liên tục, gọi là
các phiên (peer)
• Không cần có 1 máy chủ
• Nó có khả năng tự mở rộng
• Các thiết bị ngang hàng không kết nối liên tục và thay đổi địa chỉ IP
• Có khả năng cho mạng qui mô lớn nhưng khó quản lý
Ví dụ: BitTorrent, Skype, IPTV
2
Câu 3: Tiến trình là gì? Truyền thông tiến trình giữa client và server?
Tiến trình: là một chương trình chạy trong một hệ thống cuối. Trong cùng một trạm,
hai tiến trình truyền thông sử dụng truyền thông liên tiến trình, sử dụng những quy tắc
do hđh của hệ thống đầu cuối đó điều khiển. Các tiến trình trong các trạm khác nhau
truyền thông bằng cách trao đổi các bản tin.
Truyền thông tiến trình giữa client và server
Tiến trình Client: tiến trình khởi tạo truyền thông.
Tiến trình Server: tiến trình đợi được liên lạc.
Trong ngữ cảnh phiên truyền thông giữa một cặp tiến trình, tiến trình kích hoạt
truyền thông (nghĩa là khởi đầu kết nối với tiến trình khách ở đầu phiên) được gọi là
khách. Còn tiến trình chờ để được kết nối bắt đầu phiên là chủ.
Vd: Web: tiến trình trình duyệt là khách, tiến trình máy chủ Web là chủ
P2P: khi phiên A hỏi phiên B: tiến trình phiên A là khách, phiên B là chủ. Ngược
lại khi B hỏi A → P2P có cả tiến trình client và tiến trì\nh server
Câu 4: Bốn khía cạnh của truyền tải
Truyền dữ liệu tin cậy, Thông lượng, Định thời, An ninh
Truyền dữ liệu tin cậy

• Đảm bảo dữ liệu gửi ở một đầu ứng dụng được truyền chính xác và đầy đủ đến
đầu kia của ứng dụng. Khi một giao thức lớp vận chuyển cung cấp dịch vụ này
thì tiến trình bên gửi có thể chỉ chuyển dữ liệu của nó đến socket và tin tưởng
hoàn toàn là dữ liệu sẽ đến tiến trình bên nhận mà không hề bị lỗi.
• Một số ứng dụng (ví dụ như audio, video) có thể chịu được tổn thất. Các ứng
dụng khác (vd FTP, telnet) yêu cầu truyền dữ liệu tin cậy.
Thông lượng
• Thông lượng khả dụng là tốc độ mà tiến trình gửi có thể gửi bit đến tiến trình
nhận. Vì băng thông đường truyền được chia sẻ cho nhiều phiên khác, nên
thông lượng khả dụng thay đổi theo thời gian. Để cung cấp thông lượng khả
dụng đảm bảo cho một dịch vụ nào đó, rất nhiều cơ chế, kỹ thuật đã ra đời, như
IntServ, DiffServ,
• Ứng dụng có yêu cầu về thông lượng được gọi là ứng dụng nhạy cảm băng
thông (ví dụ đa phương tiện). Các ứng dụng này yêu cầu một băng thông tối
thiểu để có thể hoạt động dịch vụ.
• Các ứng dụng khác, như elastic (co giãn) có thể sử dụng bất cứ thông lượng
nào, mà không đưa ra yêu cầu tối thiểu. Ví dụ FTP, Web, E-mail
Định thời
• Một số ứng dụng thời gian thực (ví dụ VoIP, game online) yêu cầu trễ thấp,
nghĩa là mỗi bit bên gửi chuyển tới socket bên đích trong khoảng thời gian nhỏ
hơn 100ms.
• Với những ứng dụng không cần thời gian thực thì trễ ít vẫn tốt hơn trễ nhiều,
nhưng nó không có một giới hạn yêu cầu nào về trễ.
An ninh
3
• Cung cấp bảo mật cho dữ liệu, ví dụ như mã hóa, nhằm kể cả khi hacker bắt
được gói tin cũng không thể đọc được nội dung.
• Toàn vẹn dữ liệu
• Xác thực điểm cuối.
Câu 5. Sự khác biệt giữa TCP và UDP. Ví dụ về một số giao thức ứng dụng

TCP UDP
Kết nối Hướng kết nối Phi kết nối
Thiết lập kết nối
trước khi truyền
Có. Sau khi kết thúc phải giải
phóng kết nối.
Không
Header 20 bytes 8 bytes
Sắp xếp lại gói tin TCP sắp xếp lại các gói tin
theo thứ tự định sẵn
UDP không sắp xếp, bởi các
gói tin truyền đi độc lập với
nhau. Nếu có yêu cầu sắp xếp,
nó phải đc thực hiện ở tầng ứng
dụng.
Độ tin cậy Cao Thấp
ACK Có Không
Truyền lại Có Không
Điều khiển luồng Có Không
Sửa lỗi Có Không
Tốc độ truyền Thấp hơn UDP Nhanh hơn UDP vì không có
cơ chế sửa lỗi
Ứng dụng Yêu cầu độ tin cậy Yêu cầu xử lý nhanh, như: thời
gian thực
Giao thức HTTP, FTP, SMTP, Telnet DNS, SNMP, DHCP, RIP,
TFTP, RTP,
Câu 6. Chức năng của giao thức lớp ứng dụng
Giao thức lớp ứng dụng định nghĩa cách các thủ tục của ứng dụng chạy trên các hệ
thống cuối khác nhau chuyển các bản tin cho nhau. Cụ thể, một giao thức lớp ứng
dụng định nghĩa:

• Loại bản tin trao đổi, ví dụ: bản tin yêu cầu hay bản tin phản hồi.
• Cú pháp của nhiều loại bản tin khác nhau, như các trường trong bản tin và cách
mô tả các trường này
• Ngữ nghĩa của các trường, tức là ý nghĩa của trường thông tin.
• Quy tắc xác định một tiến trình gửi và phản hồi bản tin khi nào và như thế nào.
Một vài giao thức lớp ứng dụng được đặc tả trong các RFC, nên có mang tính công
khai. Nhưng cũng có những giao thức lớp ứng dụng là dành riêng và không công khai,
như hệ thống chia sẻ tệp P2P.
Giao thức lớp ứng dụng khác với ứng dụng mạng. Giao thức lớp ứng dụng chỉ là
một phần của ứng dụng mạng. Ví dụ, ứng dụng Web gồm nhiều phần tử, như HTML,
trình duyệt web, web server và HTTP (giao thức lớp ứng dụng).
4
Chương 2: WEB - HTTP
Câu 1: Khái niệm HTTP
• HTTP (Hypertext transfer protocol (giao thức truyền siêu văn bản) là một giao
thức lớp ứng dụng của Web. HTTP được thực hiện trong hai chương trình:
chương trình máy khách và chương trình máy chủ; nghĩa là sử dụng mô hình
client - server. Hai chương trình này được thực hiện trên các hệ thống đầu cuối
khác nhau, giao tiếp với nhau bằng cách trao đổi các bản tin HTTP.
• HTTP sử dụng TCP làm giao thức lớp giao vận
+ Client khởi tạp kết nối TCP (tạo socket) tới server, cổng 80
+ Server chấp nhận kết nối TCP từ client
+ Các bản tin HTTP được trao đổi giữa trình duyệt và web server
+ Đóng kết nối TCP
• HTTP không có trạng thái: server không duy trì thông tin về những yêu cầu
trước đó của client
Câu 2: URL
• Trang web chứa các đối tượng (object)
+ Đối tượng có thể là file HTML, ảnh JPEG, audio,
+ Trang web chứa file HTML cơ bản bao gồm nhiều đối tượng tham chiếu

+ Mỗi đối tượng tham chiếu được xác định bằng địa chỉ URL
Câu 3: Phân biệt Non-persistent HTTP và Persistent HTTP
Non-persistent HTTP Persistent HTTP
• Nhiều nhất một đối tượng được gửi
qua một kết nối TCP
• Mỗi đối tượng cần 2 RTT tham
chiếu (RTT khởi tạo kết nối, RTT
yêu cầu tệp)
• Mào đầu OS cho mỗi kết nối TCP
• Các trình duyệt thường mở song
song một số kết nối TCP để lấy các
đối tượng tham chiếu
Thời gian đáp ứng
= 2RTT + thời gian truyền file
• Nhiều đối tượng có thể được gửi trên
một kết nối TCP giữa client và
server.
• Chỉ cần một RTT cho tất cả các đối
tượng tham chiếu
• Server để kết nối mở sau khi gửi đáp
ứng
• Các bản tin HTTP của cùng cặp
client/server được gửi trên kết nối
mở đó
• Client gửi các yêu cầu bất cứ khi nào
nó gặp đối tượng tham chiếu
5
− RTT (round trip time): thời gian một gói tin từ client đến server và phản hồi trở lại.
Câu 4: Khuôn dạng bản tin HTTP
Hai loại bản tin HTTP: request (yêu cầu), response (đáp ứng)

 Bản tin yêu cầu HTTP :
• ASCII (khuôn dạng mà con người đọc được)
• Bản tin gồm 5 dòng, sau mỗi dòng là kí tự xuống dòng và chuyển dòng
• Dòng đầu tiên là dòng yêu cầu : gồm 3 trường, trường phương thức, trường
URL, và trường phiên bản HTTP. Trường phương thức có thể lấy các giá trị
khác nhau, gồm GET, POST, HEAD, PUT, DELETE.
• Các dòng tiếp theo là dòng tiêu đề.
Giải thích các câu lệnh trong ví dụ trên
(1): phên bản thực hiện trình duyệt là HTTP/1.1
(2): đặc tả trạm chủ chứa đối tượng
(3): trình duyệt báo cho máy chủ là muốn đóng kết nối sau khi gửi đối tượng
yêu cầu
(4): dòng tiêu đề đặc tả agent, nghĩa là trình duyệt thực hiện yêu cầu tới máy
chủ.
(5): tiêu đề chỉ ra người sử dung muốn nhận phiên bản tiếng pháp của đối
tượng ( nếu có) , còn không máy chủ sẽ gửi phiên bản mặc định.
 Bản tin đáp ứng
6
Gồm 3 phần
• Dòng đầu là dòng trạng thái : có 3 trường: trường phiên bản giao thức, mã trạng
thái, và bản tin trạng thái tương ứng
• 6 dòng tiếp theo là tiêu đề
• Khối thực thể: là thân của bản tin , nó chưa chính đối tượng yêu cầu (phần data
data…)
Giải thích các câu lệnh trong ví dụ trên
(1): Máy chủ sử dụng HTTP/1.1 & mọi thứ là ổn- OK (nghĩa là máy chủ đã tìm
thấy, và đang gửi tượng yêu cầu.
(2): Báo máy khách là nó sẽ đóng két nối TCP sau khi gửi bản tin
(3): Chỉ thời gian và ngày mà dáp ứng HTTP được máy chủ tạo ra và gửi đi
(4) : chỉ ra là bản tin đa được tạp ra bằng máy chủ Web apache

(5): chỉ thời gian và ngà mà đối tượng dc tạo ra hay thay đổi sau cùng
(6): chỉ số byte của đối tượng dc gửi
(7) : chỉ ra đối tượng trong khôi thực thể là văn bản HTML
Câu 5: Khái niệm cookies, lợi ích và những đặc điểm
*) Khái niệm
− Cookie là một bộ nhắc nhỏ mà website lưu trữ ở trên máy tính, nhằm định danh
người sử dụng; đồng thời cho phép các điểm truy nhập bám vết người sử dụng.
− Cookie có bốn thành phần
+ Dòng tiêu đề cookie trong bản tin đáp ứng HTTP
+ Dòng tiêu đề cookie trong bản tin yêu cầu HTTP
+ Tệp cookie giữ ở máy trạm user, do trình duyệt của user điều khiển
+ Cơ sở dữ liệu đầu cuối (back-end) ở trang web.
7
• 200 OK
• 301 Moved Permanently
• 400 Bad request
• 404 Not found
• 505 HTTP version not
supported
*) Lợi ích
− Thường được sử dụng trong các dịch vụ thương mại điện tử, để hỗ trợ chức
năng mua hàng trực tuyến, (như shopping cart, one-click shopping)
− Các doanh nghiệp có thể biết đc 1 số thông tin về những ng đang truy cập web
của mình (mức độ thường xuyên, thời gian); giúp lưu trữ thông tin cá nhân của
khách hàng, tạo thuận tiện cho lần truy cập sau.
− Với người dùng: truy cập nhanh hơn, không phải nhập thông tin nhiều lần.
*) Đặc điểm
− Cookies cho phép các trang web biết nhiều về bạn, xâm phạm quyền riêng tư,
rò rỉ thông tin cá nhân
− Sử dụng cookie có thể khiến mất thông tin nếu người khác sử dụng máy tính

của bạn (do cookie lưu ở trình duyệt).
Câu 6: Web cache
*) Định nghĩa
− Máy chủ đệm (web cache) còn được gọi là máy chủ proxy, là một phần tử mạng
thỏa mãn các yêu cầu HTTP khi đại cho máy chủ Web gốc.
− Web cache có kho lưu trữ riêng và giữ các bản sao của các đối tượng được yêu
cầu gần đây trong kho lưu trữ này.
− Mục đích: đáp ứng yêu cầu của client mà không cần sự tham gia của server ban
đầu, nhằm tăng tốc độ đáp ứng, chia tải cho web server gốc.
*)Nguyên tắc hoạt động
− Browser thiết lập kết nối TCP tới web cache, và gửi yêu cầu HTTP về đối
tượng.
− Web cache kiểm tra xem nó có bản sao của đối tượng trong kho lưu trữ của
mình hay không. Nếu có, web cache sẽ gửi trả đối tượng trong bản tin HTTP
đáp ứng cho browser
− Nếu web cache không có bản sao, nó sẽ mở một kết nối TCP đến server gốc,
nhằm gửi yêu cầu HTTP về đối tượng.
− Khi web cache nhận bản tin trả lời của server gốc, nó sẽ lưu 1 bản sao trong bộ
lưu trữ nội bộ của mình, đồng thời gửi 1 bản sao trong bản tin HTTP đáp ứng
tới browser.
8
→ Web cache vừa đóng vai trò client, vừa đóng vai trò server ở cùng thời điểm. Thông
thường, web cache được ISP mua và cài đặt.
*)Lợi ích của web cache
− Giảm thời gian đáp ứng yêu cầu của client
− Giảm lưu lượng trên liên kết truy nhập của tổ chức
− Internet dày đặc cache: cho phép các nhà cung cấp nội dung “nghèo nàn” có thể
truyền nội dung hiệu quả (giống P2P)
Ví dụ: trang 45, 46 bài giảng.
9

Câu 7: Conditional GET
− Nguyên nhân ra đời: bản sao của
các đối tượng nằm trong các web
cache có thể bị cũ, nghĩa là đối
tượng ở các máy chủ gốc đã thay
đổi so với thời điểm mà web
cache sao chép nó và chuyển tới
browser.
− HTTP có cơ chế cho phép tra
cứu việc đối tượng trong cache
đã được cập nhật hay chưa
− Nó sẽ không gửi đối tượng nếu
cache đã cập nhật phiên bản mới
− Cache: chỉ ra ngày của bản sao
cached trong HTTP yêu cầu,
bằng dòng
If-modified-since: <date>
− Server: phản hồi nhưng không
gửi đối tượng nếu copy của
cache là mới nhất:
10
HTTP/1.0 304 Not Modified
Chương 3: FTP - SMTP
Câu 1: FTP
• Là giao thức cho phép truyền file qua mạng (FTP)
• Cần có một máy chủ và một máy khách, máy chủ chạy software cung cấp dịch
vụ FTP, máy khách chạy software dùng cho người sử dụng.
• FTP thiết lập hai kết nối: điều khiển/khởi tạo kết nối (cổng 21) và truyền dữ
liệu (cổng 20).
• FTP cho phép truyền file từ hoặc tới host ở xa: Người sử dụng có thể truy nhập

file và các thư mục bằng cách tương tác trên máy chủ ở xa
o Liệt kê các file trong thư mục cục bộ ở xa
o Đổi tên và xóa tập tin (nếu được phân quyền)
o Chuyển file từ máy ở xa về máy cục bộ (download)
o Truyền file từ máy cục bộ đến máy chủ ở xa (upload)
• Mô hình client/server
o Client: phía khởi tạo truyền (từ/tới phía ở xa)
o Server: máy chủ ở xa
Câu 2: Tiến trình trao đổi file
• Người sử dụng cung cấp địa chỉ, mật khẩu. Máy khách liên lạc với máy chủ FTP tại
cổng 21, trên kết nối TCP
• Máy khách được cấp phép trên kết nối điều khiển
• Máy khách duyệt thư mục từ xa bằng lệnh gửi qua kết nối điều khiển
• Khi mát chủ nhận được lệnh chuyển tệp, nó mở kết nối TCP thứ hai để truyền dữ
liệu, ở cổng 20.
• Sau khi truyền xong 1 tệp, máy chủ đóng kết nối dữ liệu.
• Khi muốn truyền 1 tệp khác, một kết nối dữ liệu mới lại được mở (nghĩa là kết nối
điều khiển liên tục trong phiên sử dụng, kết nối dữ liệu không liên tục)
• Trong suốt 1 phiên, FTP server duy trì trạng thái: folder hiện thời, xác thực trước
đó
Các lệnh cơ bản
Lệnh Mã trả về
• Gửi như văn bản ASCII qua kênh điều
khiển
• USER username
• PASS password
• LIST: hiển thị danh sách file
• RETR file name: get (download file)
• STOR file name: upload file lên server
• 331 Username OK, password

required
• 125 data connection already
open; transfer starting
• 425 Can’t open data connection
• 452 Error writing file
Câu 3: Thư điện tử và ứng dụng của nó
• Là dịch vụ phổ biến rộng rãi nhất, từ khi có Internet, ngày càng phát triển mạnh
mẽ và trở nên quan trọng.
• Là phương thức truyền thông không đồng bộ - người gửi và đọc vào thời điểm
riêng biệt, không phụ thuộc lẫn nhau
• Email được gửi đi với tốc độ nhanh, phân phát dễ dàng, chi phí rẻ.
• Hoạt động trên nguyên tắc: lưu và chuyển tiếp.
• Người dùng cần có tài khoản để thực hiện gửi và nhận thư
Câu 4: Hoạt động của SMTP và email
MUA = Mail User agent; MTA = Mail Transfer agent; MDA = Mail Delivery Agent
Giả sử A gửi bản tin cho B
• A dùng MUA của A để gửu email đến B, có địa chỉ là
• MUA của A gửi bản tin tới mail server của A, bằng giao thức SMTP, và bản tin
sẽ được đặt trong hàng đợi bản tin.
• Phía client của giao thức SMTP (chạy trên mail server của A) thấy bản tin trong
hàng đợi bản tin. Nó mở kết nối TCP tới mail server của B
• SMTP phía client gửi thư của A trên kết nối TCP đó
• Tại mail server của B, phía server SMTP nhận bản tin. Mail server sẽ đặt bản
tin này vào hòm thử của B
• B sử dụng MUA của mình để đọc thư.
Câu 5: So sánh SMTP với HTTP
SMTP HTTP
 Đều thuộc lớp ứng dụng
 Đều dùng lệnh/phản hồi ASCII, các mã trạng thái, mệnh đề
Giao thức truyền thư đơn giản.(là heart

của email)
Giao thức truyền siêu văn bản.(là heart
của ứng dụng web)
Sử dụng là giao thức đẩy (push) Sử dụng là giao thức kéo (pull).
Yêu cầu bản tin (header and body) là mã
7bit ASCII
Không áp đặt hạn chế này.
Nhiều đối tượng gửi trong 1 bản tin gồm
nhiều phần
Mỗi đối tượng đóng trong bản tin phản
hồi của nó.
Câu 6: POP3 và IMAP
POP3/
IMAP
MUA
SMTP
SMTP
MDAMTA
MUA
POP3
 Chế độ (mode) “ tải và xoá” (ví dụ trước): Nam không thể đọc lại email nếu
anh ấy thay đổi máy khách.
 Chế độ “Tải và giữ ”: nhiều bản sao trên các máy khách.
 POP3 không giữ trạng thái suốt phiên
IMAP
 Giữ toàn bộ thư tại địa điểm duy nhất là server
 Cho phép người dùng tổ chức thư vào các thư mục
 IMAP giữ trạng thái người dùng suốt phiên: tất cả thư mục và ánh xạ giữa ID
của bản tin và tên thư mục.
Chương 4: DNS

Câu 1: Khái niệm DNS
• DNS (Domain Name System): Hệ thống tên miền là ứng dụng client-server,
nhận dạng mỗi host có địa chỉ IP ứng với một tên duy nhất.
• DNS dùng cổng 53
• Có thể sử dụng UDP (chủ yếu) hoặc TCP (hiếm khim chỉ khi bản tin phản hồi
có kích thước lớn hơn 512 byte)
• DNS là giao thức hỗ trợ cho các ứng dụng, nghĩa là thường được các giao thức
lớp ứng dụng (HTTP, SMTP, FTP) sử dụng để phiên dịch tên server do người
sử dụng đưa ra thành địa chỉ IP.
• Các dịch vụ DNS
+ Phiên dịch địa chỉ IP và tên trạm
+ Bí danh trạm chủ
+ Bí danh máy chủ thư
+ Phân bố tải: các server web được nhân rộng ra, tập các địa chỉ IP cho
một tên chính tắc
Câu 2: Hệ thống tên miền DNS, tại sao không tập trung DNS?
*) Hệ thống tên miền
+ Cơ sở dữ liệu phân tán được thực hiện trong phân cấp máy chủ tên miền
+ Mục đích: giải quyết vấn đề quy mô (scale), DNS sử dụng nhiều máy chủ, tổ
chức theo kiểu phân cấp và phân tán trên khắp địa cầu.
+ Không có máy chủ nào chứa toàn bộ ánh xạ cho các máy tính trên Internet, mà
các ánh xạ sẽ được phân bố giữa các máy chủ DNS
+ Có 3 lớp máy chủ: DNS gốc (root), DNS miền mức cao (top-level domain -
TLD) và máy chủ DNS thẩm quyền.
+ DNS gốc
 Được kết nối với server DNS miền mức cao, khi máy chủ này
không thể xử lý được tên miền
 Có 13 root server trên toàn thế giới.
+ DNS tên miền mức cao (TLD):
 Là server cho com, org, net, edu và tất cả các tên miền cấp

quốc
+ DNS thẩm quyền
 Server DNS của các tổ chức, cung cấp ánh xạ tên trạm được cấp
quyền với địa chỉ của server các tổ chức, do nhà cung cấp dịch vụ
hoặc tổ chức duy trì
+ Ngoài ra, còn có máy chủ tên miền cục bộ
+ Không thuộc phân cấp DNS
+ Mỗi ISP (ISP dân cư, công ty, ) chỉ có một máy chủ tên miền cục bộ,
được gọi là server tên miền mặc định.
+ Khi host truy vấn DNS, truy vấn được gửi tới server DNS cục bộ
+ Hoạt động như proxy, chuyển tiếp truy vấn vào hệ thống phân cấp nếu
nó không trả lời được truy vấn.
*) Tại sao không tập trung DNS
+ Khi có lỗi ở 1 điểm thì cả hệ thống lỗi
+ Lưu lượng tập trung vào một DNS server sẽ quá lớn
+ Khoảng cách tới cơ sở dữ liệu ở xa
+ Duy trì và cập nhật
+ Không đáp ứng được quy mô mạng
Câu 3: Các kiểu truy vấn DNS
Có 2 kiểu truy vấn DNS: truy vấn đệ quy (recursive) và truy vấn lặp (Iterative)
Đệ quy Lặp
+ Đưa trọng trách xử lý tên miền
cho server được kết nối.
+ Host chỉ nhận được bản tin phản
hồi khi có kết quả
+ Server được kết nối (liên hệ) trả
lại tên miền của server cần để kết
nối
+ Host nhận IP của server hỏi tiếp
theo

Câu 4: Bản ghi DNS
Khuôn dạng RR: (name, value, type, ttl)
• TTL: time to live (thời gian sống)
Type = A
• Name: hostname (tên trạm)
• Value: địa chỉ IP
Type = CNAME
• Name: Alias name (bí danh) cho
canonical name (tên chính tắc)
www.ibm.com là bí danh của
servereast.backup2.ibm.com
• Value: canonical (tên chính tắc)
Type = NS
• Name: domain - tên miền (ví dụ
như e.g.foo.com)
• Value: hostname (tên trạm) của
máy chủ tên miền thẩm quyền cho
tên miền này
Type = MX
• Value: tên chính tắc của
mailserver gắn với Name
Câu 5: Bản tin DNS
+ Gồm 2 bản tin: bản tin truy vấn (query) và trả lời (reply), nó có cùng khuôn
dạng
 12bytes đầu là phần tiêu đề. Gồm
+ identification ( nhận dạng truy vấn): 16 bít.
+ Flags (trường cờ):
• Truy vấn hay trả lời
• Thẩm quyền
• Đệ quy

• Đệ quy sẵn sang
 Phần câu hỏi: chứa thông tin về truy vấn dang được thực hiện: gồm trường tên (
chứa tên đang được truy vấn) và trường loại ( chỉ ra loại câu hỏi về tên).
 Phần trả lời: chứa bản ghi nguồn cho tin dc truy vấn ban đầu, có trường type,
value và ttl
 Phần thầm quyền: chứa các bản ghi của các máy chủ thẩm quyền khác
 Phần bổ trợ: chứa các bản ghi hỗ trợ khác, chứa bản ghi type A
Câu 6: Chèn bản ghi vào DNS
Ví dụ: đăng ký tên miền networkutopia.com
+ IP của máy chủ thầm quyền sơ cấp: dns1.networkutopia.com 212.212.212.1
+ IP của máy chủ thầm quyền thứ cấp: dns1.networkutopia.com 212.212.212.2
→ Cần chèn hai bản ghi nguồn sau vào hệ thống DNS mức cao (TLD, do đuôi .com):
(networkutopia.com, dns1.networkutopia.com, NS)
(dns1.networkutopia.com, 212.212.212.1, A)
Trên server thẩm quyền, tạo bản ghi loại A cho www.networkuptopia.com; bản ghi
loại MX cho mailserver networkutopia.com
Câu 7: Việc đệm (caching) sẽ giúp ích gì cho hệ thống DNS khi bị tấn công?
+ Mỗi lần server tên miền học được ánh xạ, nó sẽ lưu đệm ánh xạ đó (caching)
+ Các mục lưu đệm quá thời hạn bị loại bỏ sau một thời gian
+ Server tên miền mức cao (TLD) thường lưu đệm trong các server tên miền khu
vực (cục bộ)
→Lợi ích khi bị tấn công:
+ DDoS: máy chủ DNS cục bộ đệm địa chỉ IP của các máy chủ TLD nên nó vẫn
xử lý truy vấn mà không cần chuyển đến root DNS. Chỉ cần root DNS hoạt
động bình thường thì vấn đề truy vấn trên toàn thế giới vẫn diễn ra bình thường.
Tương tự nếu đối tượng tấn công là máy chủ TLD
+ Man-in-the-middle: có cache, sẽ k phải hỏi → tránh bị tấn công.
Chương 5: Kiến trúc ngang hàng P2P
Câu 1: Hoạt động của BitTorrent
• Các thiết bị trong torrent tải xuống các khúc dữ liệu kích cỡ bằng nhau của tệp

từ một thiết bị khác. Kích cỡ khúc dữ liệu điển hình là 256 Kbyte.
• Khi một thiết bị gia nhập torrent thì:
o Đăng ký với bộ theo dõi để lấy danh sách các thiết bị ngang hàng, kết
nối với tập nhỏ các thiết bị (hàng xóm/lân cận)
o Không có khúc dữ liệu, nhưng sẽ thu thập chúng theo thời gian
• Trong khi tải xuống, thiết bị ngang hàng tải lên các khúc dữ liệu cho các thiết bị
ngang hàng khác
• Các thiết bị ngang hàng có thể vào và rời bỏ torrent một cách tùy ý
• Một khi đã có toàn bộ tệp, thiết bị ngang hàng có thể rời bỏ hoặc ở lại.
Câu 2: Cơ chế lấy khúc dữ liệu, gửi khúc dữ liệu
Lấy khúc dữ liệu
• Tại bất cứ thời điểm nào, các thiết bị ngang hàng có tập nhỏ khác nhau các
khúc dữ liệu của tệp.
• Định kỳ theo thời gian, thiết bị ngang hàng hỏi hàng xóm của nó về danh sách
khúc dữ liệu mà chúng có
• Thiết bị ngang hàng gửi yêu cầu về các khúc dữ liệu mà nó chưa có, theo quy
tắc rarest first (hiếm nhất đầu tiên): nghĩa là trong số các khúc dữ liệu nó chưa
có, khúc dữ liệu nào đang có ít nhất từ các lân cận của nó thì sẽ yêu cầu đầu
tiên.
Gửi khúc dữ liệu
• Thiết bị ngang hàng sẽ gửi khúc dữ liệu cho 4 hàng xóm hiện đang gửi dữ liệu
cho nó tại tốc độ lớn nhất. Mỗi 10 giây, nó tính toán lại tốc độ và có thể thay
đổi tập bốn thiết bị ngang hàng.
• Mỗi 30 giây, nó lựa chọn ngẫu nhiên một thiết bị ngang hàng khác, bắt đầu gửi
khúc dữ liệu. Nếu thiết bị này gửi lại dữ liệu cho nó với tốc độ đủ cao, nó hoàn
toàn có thể gia nhập nhóm 4 thiết bị đứng đầu.
o Việc lựa chọn ngẫu nhiên sẽ giúp những thiết bị mới gia nhập torrent có
thể nhận được khúc dữ liệu.
o Hiệu quả: các thiết bị ngang hàng có khả năng tải lên với tốc độ phù hợp
tìm đến nhau.

Câu 3: DHT vòng
Mạng che phủ: biểu đồ
 Cạnh giữa thiết bị ngang hàng X và Y là kết nối TCP
 Tất cả các thiết bị ngang hàng đang hoạt động và các cạnh tạo thành mạng che
phủ
 Cạnh: liên kết ảo (không phải kết nối vật lý thực tế)
 Mỗi peer chỉ biết thiết bị ngay sau nó.
 Peer 3 muốn biết peer nào chịu trách nhiệm khóa 11:
Peer 3 gửi bản tin đến peer 4; peer 4 gửi bản tin đến
peer 5; … cho đến peer 12 chịu trách nhiệm khóa 11.
Peer 12 gửi bản tin trả lời đến peer 3.
 Giảm số thông tin mỗi peer phải quản lý.
 Số lượng bản tin gửi đi lớn (N/2).
Câu 4: peer churn (hình bài 3)
 Mỗi peer theo dõi (biết địa chỉ IP) 2 peer đứng ngay sau.
 Định kì kiểm tra (ping)
 Peer rời bỏ (peer 5):
•Peer 5 thay thế thiết bị ngang hàng ngay sau thứ nhất và ngay sau thứ hai (peer
4 và 8).
•Thiết bị ngang hàng 4 sau đó yêu cầu định danh và địa chỉ IP của thiết bị ngay
sau thứ hai của nó (thiết bị ngang hàng 10).
 Peer gia nhập (peer 13):
•Chỉ biết peer 1.
•Peer 1 gửi bản tin đến peer 13 qua các peer “Thiết bị ngay trước và sau của
peer 13 là ai?”;
•Peer 12 nhận được bản tin và biết được nó là peer ngay trước của peer 13 và
peer 15 là peer ngay sau của nó.
Chương 6: Multimedia network
Câu 1: Phân loại ứng dụng MM
− Phát trực tuyến audio/video lưu trữ

+ Phương tiện được lưu trữ tại nguồn, truyền đến máy khách, nên người sử
dụng có thể tạm dừng, tua lại, tua lên Delay: cho phép trong khoảng từ
1 - 10s
+ Phát trực tuyến: máy khách bắt đầu phát vài giây sau khi nhận được tệp
từ máy chủ, trong khi đang nhận các phần sau của file từ server
+ Yêu cầu: phát liên tục, nội dung MM ở máy khách phải được tiến hành
tương ứng với thời gian nguyên gốc của bản ghi.
− Phát trực tuyến audio/video trực tiếp
+ Ví dụ: talkshow, trực tiếp thể thao
+ Do được truyền trực tiếp, và không được lưu trữ ở nguồn, nên khách
hàng không thể tua lên nội dung. Nhưng, với bộ lưu trữ cục bộ, có thể
tạm dừng, tua lại
+ Có yêu cầu về độ trễ, nhưng trễ tới 10 giây là chấp nhận được.
− IPTV
+ Thách thức: yêu cầu băng thông rất lớn, đặc biệt tại nguồn máy chủ.
+ Phương án: CDN (mạng phân bố nội dung), P2P.
− Audio/video tương tác thời gian thực
+ Ứng dụng: VoIP, hội nghị video
+ Yêu cầu trễ:
Audio: <150 msec - tốt; <400 msec - OK; ≥ 400 msec - phá hỏng hội thoại
Câu 2: Đặc tính cơ bản của mạng MM
• Thường nhạy cảm với trễ (delay sensitive)
+ Trễ toàn trình
+ Rung pha (jitter)
• Chịu được mất gói: mất gói không thường xuyên chỉ gây ra nhiễu nhỏ
Câu 3: Giải pháp hỗ trợ chất lượng trên Internet cho MM
• IntServ: Các ứng dụng sẽ nhận được băng thông đúng yêu cầu và truyền đi
trong mạng với độ trễ cho phép. Nó sử dụng giao thức báo hiệu RSVP
+ Thay đổi nền tảng Internet sao cho các ứng dụng có thể dự trữ băng
thông đầu-cuối

+ Yêu cầu phần mềm mới, phức tạp tại các trạm chủ và bộ định tuyến
• DiffServ: phân loại lưu lượng và gán độ ưu tiên xử lý cho từng loại.
+ Thay đổi một ít trên hạ tầng Internet, như cung cấp các lớp dịch vụ khác
nhau
DiffServ IntServ
Có ít phần tử mạng Có nhiều phần tử mạng
Tỉ lệ ứng dụng lớn, được các nhà cung cấp
dịch vụ ngày nay ưa dùng
Tỉ lệ ứng dụng nhỏ, phù hợp với một vài
đặc tính mạng ví dụ Admission control
Không có trạng thái bảo dưỡng trong
mạng
Trạng thái bảo dưỡng mềm dẻo ở bất kỳ
nút mạng nào
Không có điều khiển quản trị nguồn tài
nguyên
Điều khiển quản trị nguồn tài nguyên
Không có điều khiển quản trị chính sách Điều khiển quản trị chính sách
Câu 4: Mô hình trực tuyến audio/video lưu trữ
Thông qua web server Trực tiếp

Câu 5: Giao thức RTSP (giao thức trực tuyến thời gian thực)
− Giao thức tầng ứng dụng, hoạt động theo phương thức client-server
− Người sử dụng điều khiển: tua lại, FF, tạm dừng,
− RTSP không thực hiện:
+ Không xác định việc đóng gói audio/video để phát trực tuyến.
+ Không xác định truyền tải phương tiện (UDP hat TCP)
+ Không xác định đệm audio/video
− Dùng cổng 554
− Tương tác giữa client và server sử dụng RTSP

Câu 6: Giải pháp đảm bảo chất lượng ứng dụng MM
• Loại bỏ rung pha bên nhận (trễ phát)
• Phục hồi mất gói
• Mạng phân bố nội dung CDN
*) Loại bỏ rung pha bên nhận
• Bắt đầu mỗi khúc bằng một số thứ tự: bên gửi tăng stt lên 1 đơn vị khi có 1 gói
tin được tạo ra
• Bắt đầu mỗi khúc bằng 1 nhãn thời gian: bên gửi gán nhãn cho mỗi khúc với
thời gian khúc được tạo ra
• Làm trễ phát tại các khúc tại bên nhận
+ Trễ phát lại của các khúc audio nhận được phải đủ dài sao cho phần lớn
các gói tin nhận được trước thời gian phát đã được lập lịch của chúng
+ Trễ phát này có thể là cố định trong suốt phiên audio hay thay đổi thích
nghi trong vòng đời phiên audio
*) Phục hồi mất gói
• Có 2 phương án phục hồi mất gói: FEC và đan xen
• Forward Error Correction (FEC)
+ Thiết kế đơn giản
 Với mỗi nhóm n khúc dữ liệu, tạo 1 khúc dữ liệu dư thừa bằng
toán tử OR từ n khúc gốc
 Gửi n+1 khúc, tăng băng thông lên 1/n
 Có thể tái tạo n khúc dữ liệu gốc nếu chỉ có 1 khúc từ n+1 khúc bị
mất
 Trễ phát: trễ đủ lớn để nhận tất cả n+1 gói tin
 Điểm cân bằng:
• Tăng n, giảm băng thông dư thừa
• Tăng n, trễ phát càng lớn
• Giảm n, xác suất có 2 hay nhiều khúc bị mất càng lớn
+ Thiết kế FEC thứ hai
 Kèm thêm dòng chất lượng thấp

 Gửi dòng chất lượng thấp như thông tin dư thừa
 Bất cứ khi nào bị mất gói không liên tục, bên nhận đều có thể
phục hồi gói mất
 Có thể gắn thêm khúc chất lượng thấp (n-1) thứ nhất và (n-2) thứ
2
• Đan xen
+ Khúc được chia thành các đơn vị nhỏ hơn, vd mỗi đơn vị 5 msec
+ Gói tin chứa các đơn vị nhỏ từ các khúc khác nhau
+ Nếu gói bị mất, vẫn còn phần lớn khúc dữ liệu
+ Không có dữ liệu thừa, nhưng tăng trễ phát
*) Mạng phân bố nội dung CDN
• Mục tiêu: Phát trực tuyến nhiều file lớn (video) từ một máy chủ gốc trên thời
gian thực
• Giải pháp:
+ sao chép nội dung tại hàng trăm máy chủ trên Internet
+ Khi khách hàng cần cập nhật nội dung, CDN phân bố lại nội dung mới
tới các máy chủ CDN
+ Khi khách hàng yêu cầu nội dung, nội dung sẽ được máy chủ CDN cung
cấp, chứ k cần máy chủ gốc
• Định tuyến các yêu cầu
+ CDN tạo “bản đồ” chỉ thị khoảng cách từ các ISP và các nút CDN
+ Khi có truy vấn đến máy chủ thẩm quyền DNS:
 Máy chủ xác định ISP xuất phát của truy vấn
 Sử dụng “bản đồ” để xác định máy chủ CDN tốt nhất
 Các nút mạng CDN tạo thành mạng che phủ lớp ứng dụng
Câu 7: Khái niệm, khuôn dạng bản tin RTP
• Khái niệm: RTP là một giao thức định nghĩa cấu trúc gói tin tiêu chuẩn nhằm
truyền audio/video thông qua mạng IP.
• Thông thường, RTP chạy trên UDP. Phía gửi đóng gói khúc đa phương tiện
trong gói tin RTP, sau đó đóng gói tin vào đoạn UDP, và chuyển đoạn UDP

xuống IP. Phía nhận trích lấy gói tin từ đoạn UDP, sau đó trích lấy khúc đa
phương tiện từ gói tin RTP, và chuyển khúc đến bộ phát phương tiện để giải mã
và phát.
• Khuông dạng
+ Payload Type (7 bit): chỉ thị loại mã hóa được sử dụng. Nếu bên gửi thay
đổi mã hóa giữa hội nghị, bên gửi thông báo cho bên nhận thông qua
trường này.
 Type 0: Audio - PCM
µ
, 64 kbps
 Type 3: Audio - GSM, 13 kbps
 Type 7: Audio - LPC, 2.4 kbps
 Type 26: Video - Motion JPEG
 Type 31: Video - H.261
 Type 33: Video - MPEG2 video
+ Sequence number (16 bit): tăng thêm 1 mỗi lần gói tin RTP được gửi đi,
và có thể được sử dụng để phát hiện mất gói và lưu thứ tự gói
+ Time Stamp (32 bit): thời điểm lấy mẫu của byte đầu tiên trong gói dữ
liệu RTP.
+ SSRC (32 bit): xác định nguồn của dòng RTP. Mỗi dòng RTP trong một
phiên RTP phải có SSRC phân biệt.
Câu 8: Các loại gói tin RTCP, băng thông RTCP
• RTCP: Real time control protocol
• Các gói tin RTCP
+ Gói tin báo cáo bên nhận: Phần mất gói, số thứ tự cuối cùng, rung pha
trung bình
+ Gói tin báo cáo bên gửi: SSRC của dòng RTP, thời gian hiện thời, số gói
tin gửi đi, số byte gửi đi
+ Gói tin mô tả nguồn:
 Địa chỉ email của bên gửi, tên bên gửi, SSRC của dòng RTP liên

quan
 Cung cấp ánh xạ giữa SSRC và tên người sử dụng/trạm chủ
• Đồng bộ các dòng
• Băng thông: RTCP cố gắng hạn chế lưu lượng của nó nhỏ hơn 5% băng thông
của phiên.
+ Ví dụ: Tốc độ video 2 Mbps → RTCP cố gắng hạn chế tốc độ của nó
nhỏ hơn 100 Kbps
+ RTCP dành 75% tốc độ cho bên nhận, 25% cho bên gửi

×