Tải bản đầy đủ (.pdf) (30 trang)

bài tập thông tin dữ liệu mạng

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 (925.14 KB, 30 trang )


MỤC LỤC

A. MACHINE PROBLEM 6 1
1. CÂU HỎI 1 1
2. CÂU HỎI 2 1
3. CÂU HỎI 3 2
4. CÂU HỎI 4 4
5. CÂU HỎI 5 6
B. MACHINEPROBLEM 7 9
1. CÂU HỎI 1: 9
2. CÂU HỎI 2 10
3. CÂU HỎI 3: 10
4. CÂU HỎI 4 12
5. CÂU HỎI 5 13
C. MACHINE PROLEM 8 17
1. CÂU HỎI 1 17
2. CÂU HỎI 2 17
3. CÂU HỎI 3 18
4. CÂU HỎI 4 19
5. CÂU HỎI 5 20
6. CÂU HỎI 6 26

Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


1

A. MACHINE PROBLEM 6

1. Câu hỏi 1


Quản lý luồng (flow control) là gì? Cho biết sự khác nhau giữa quản lý luồng và quản lý
nghẽn (congestion control) ? Khi nào thì ta có thể không quan tâm đến việc quản lý nghẽn ?
Trả lời
u khin lung  flow control
Điều khiển luồng là quá trình điều khiển việc truyền dữ liệu giữa bên phát và bên thu sao
cho đảm bảo bên thu luôn luôn có thể nhận được dữ liệu vào bộ đệm trước khi xử lý.
Cơ chế điều khiển luồng được thiết kế để điều khiển luồng dữ liệu giữa thiết bị nhận và
thiết bị gửi sao cho buffer của thiết bị nhận không bị tràn. Nếu bị tràn, các khung hoặc gói dữ
liệu bị mất. Điều khiển luồng được dùng trong tầng Datalink để điều khiển các liên kết điểm-
điểm và trong tầng transport để điều khiển luồng end-to-end trên mạng có định tuyến.
Hai phương pháp điều khiển luồng:
 X-ON/X-OFF
 Sliding window
Quản lý nghẽn được sử dụng để điều khiển dòng dữ liệu khi thực sự có nghẽn xảy ra. Có
hai hướng tiếp cận:
 End-end congestion control: thông tin về mức độ nghẽn mạng được suy ra từ
lượng tin bị mất mát trong quá trình truyền.
 Network-assited congestion control: Router cung cấp các thông tin phản hồi về
tình trạng tới end systems.
o Bit thông báo nghẽn mạng
o Hạn chế tốc độ gửi


Quản lý luồng là cơ chế end-end điều khiển lưu lượng dữ liệu giữa bên gửi và bên nhận.
Trong khi, quản lý nghẽn là cơ chế được network sử dụng để kiểm soát nghẽn trong network.
Quản lý nghẽn ngăn việc mất gói và trễ do nghẽn mạng. Quản lý nghẽn là cơ chế đảm bảo
toàn bộ network có thể xử lý luồng dữ liệu đi vào network.
Khi sử dụng cơ chế congestion avoidance  không xảy ra nghẽn  không cần quan tâm
đến quản lý nghẽn.
2. Câu hỏi 2

Thế nào là địa chỉ IP theo class và không theo class (classless/classful). Nêu lợi ích của
việc sử dụng classless. Cho ví dụ.

Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


2

Trả lời
IPv4 là giao thức đánh địa chỉ cho các máy tính trong mạng, mỗi địa chỉ có độ dài 4 byte
(32 bit) và được chia thành 5 lớp:
Class A: 1.0.0.0 – 127.255.255.255
10 - Class B: 128.0.0.0 - 191.255.255.255
110 - Class C: 192.0.0.0 - 223.255.255.255
1110 - Class D: 224.0.0.0 - 239.255.255.255
11110 - Class E: 240.0.0.0 - 254.255.255.255
Với cách đánh địa chỉ IP classfull, một mạng có network mask được xác định như sau:
class A 255.0.0.0, class B 255.255.0.0, class C 255.255.255.0. Ta nhận thấy với mỗi mạng
lớp C có thể có tối đa 28 = 256 địa chỉ, lớp B là 216 và lớp A là 224.
Càng ngày các mạng với số lượng máy tính nhỏ ngày càng nhiều thì với cách chia này
mỗi mạng có số lượng địa chỉ khá nhiều vừa gây ra sự lãng phí lớn vừa gây thiếu thốn. Ví dụ
một đơn vị kinh doanh internet có 50 máy tính, nếu sử dụng một địa chỉ mạng lớp C
192.168.3.0/24 thì sẽ lãng phí 255 – 2 – 50 = 203 địa chỉ.
Do đó người ta nghĩ ra IP classless bằng cách thay đổi số lượng bit Net ID trong net mask
cho phù hợp với số lượng máy người dùng cần. Xét lại ví dụ trên nếu ta dùng 26 bit cho Net
ID thay vì 24 bit thì số lượng máy tính tối đa trong mạng là: 2(32-26) – 2 = 62 địa chỉ. Như
vậy rõ ràng giảm bớn lãng phí rất nhiều so với ví dụ ở trên.
*Li ích ca vic s dng IP classless:
 Linh động trong việc phân chia NetID và HostID.
 Trong trường hợp sử dụng subnetting giúp phân nhỏ địa chỉ mạng  tiết kiệm không

gian địa chỉ
 Subnetting làm giảm broastcast trong mạng do giảm được số lượng hosts trong mạng.

3. Câu hỏi 3
Giải thích các field trong IP header . Theo bạn, một protocol ở lớp 2 có field nào mang ý
nghĩa có Protocol ID như ở IP header không ?
Trả lời
Cấu trúc các trường trong IPv4 header:
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


3



Vers (version): là một trường 4 bit, có giá trị bằng 4 với IPv4.
Hdr len (Internet Header Length): 4 bit, xác định kích thước của header. Giá trị nhỏ nhất
bằng 5, tức 5x 32 = 160 bits = 20 byte. Với 4 bit, giá trị lớn nhất là 15 word, tương đương 15
x 32 = 480 bit = 60 bytes.
ToS (Type of service): định nghĩa cách mà datagram được quản lý. Nó bao gồm các bit
định nghĩa ưu tiên của datagram. Nó cũng chứa các bit làm rõ loại dịch vụ phía gửi mong
muốn độ tin cậy, độ trễ,…
Length (Total length): giá trị 16 bit này xác định tổng cộng kích thước của gói tính bằng
byte, bao gồm cả header và dữ liệu. Giá trị chiều dài nhỏ nhất của gói bằng 20 byte (20 byte
header + 0 byte data) và lớn nhất 65535 byte.
Identification: dùng với phân đoạn. Một datagram khi đi qua các mạng khác nhau, có
thể chia thành các đoạn để phù hợp với kích thước của khung mạng. Khi xảy ra hiện tượng
này thì mỗi đoạn được định danh với một số thứ tự trong trường này.
Flag: có độ dài 3 bit, dùng để điều khiển hoặc xác định fragment.
 Bit 0: dự trữ, được set bằng 0.

 Bit 1: Don’t Fragment (DF) cho biết gói có bị phân mảnh hay không. Nếu
được set thì packet sẽ bị xóa bỏ.
 Bit 2: More Fragment (MF). Cờ này được xóa với gói không phân mảnh. Với
gói phân mảnh, tất cả các các phân đoạn (fragment) ngoại trừ phân đoạn cuối
được set cờ này.
Fragment Offset: dài 13 bit. Đây là một con trỏ chỉ ra độ lệch của dữ liệu trong
datagram gốc. Phân đoạn đầu tiên có giá trị offset bằng 0, giá trị offset lớn nhất là (2
13
– 1) ×
8 = 65,528 byte.
TTL (Time To Live): chỉ ra số bước nhảy (hop) mà một gói có thể đi qua. Con số này sẽ
giảm đi 1 khi một gói tin đi qua router. Khi bộ đếm đạt tới 0 gói này sẽ bị loại. Đây là giải
pháp nhàm ngăn chặn tình trạng lặp vòng vô hạn của gói nào đó.
Protocol: có 8 bit, chỉ ra giao thức lớp trên, chẳng hạn như TCP hay UDP, tiếp nhận các
gói tin khi công đoạn xử lý IP hoàn tất.
Checksum: có 16 bit được sử dụng để kiểm tra lỗi header.
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


4

Source address: có 32 bit, chỉ ra địa chỉ IP của nơi gửi gói.
Destination address: có 32 bit, chỉ ra địa chỉ IP của nơi nhận gói.
Options: Chứa một hoặc nhiều hơn tùy chọn trong IPv4. Kích thước trường này là một số
nguyên lần của 32 bit (4 byte) . Nếu các option không dùng hết và làm lẻ khối 32 bít, các giá
trị 0 sẽ được thêm vào để đảm bảo IPv4 header là một số nguyên của khối 4 byte, như vậy
chiều dài ipv4 header mới có thể chỉ định được bằng giá trị cuả trường Internet Header
Length. Khi sử dụng trường này, trường Hdr Len sẽ lớn hơn 5, vì phải thêm các byte trong
trường option này.
 Ở tầng datalink ta có field internettype mang ý nghĩa tương tự Prototype ID của internet

header:
 0x800 : IPv4
 0x808 : IPv6

4. Câu hỏi 4
Giải thích các field trong TCP header. So sánh header của TCP và UDP.
Trả lời
TCP header:
0 - 3
4 - 7
8 - 9
10 - 15
16 - 31
Source Port
Destination Port
Sequence Number
Acknowledgement Number
Data
Offset
Reserved
U
R
G
A
C
K
P
S
H
R

S
T
S
Y
N
F
I
N
Window
Checksum
Urgent Pointer
Options (optional)
Padding
data

Source port: Định nghĩa chương trình ứng dụng trong máy tính nguồn.
Destination port: Định nghĩa chương trình ứng dụng trong máy tính đích.
Sequence number: một dòng dữ liệu từ chương trình ứng dụng (application) có thể được
chia thành nhiều đoạn TCP. Số thứ tự này chỉ ra vị trí của dữ liệu trong dòng dữ liệu gốc.
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


5

Acknowledgement number: Nếu cờ ACK bật thì giá trị của trường chính là số thứ tự gói
tin tiếp theo mà bên nhận cần.
Data offset: Trường có độ dài 4 bít qui định độ dài của phần header (tính theo đơn vị từ
32 bít). Phần header có độ dài tối thiểu là 5 từ (160 bit) và tối đa là 15 từ (480 bít).
Reserved: Dành cho tương lai và có giá trị là 0.
Flags (hay Control bits): Bao gồm 6 cờ:

URG: Cờ cho trường Urgent pointer
ACK: Cờ cho trường Acknowledgement
PSH: Hàm Push
RST: Thiết lập lại đường truyền
SYN: Đồng bộ lại số thứ tự
FIN: Không gửi thêm số liệu
Window: kích thước cửa sổ trượt.
Checksum: 16 bít kiểm tra phát hiện lỗi.
Urgent pointer: Nếu cờ URG bật thì giá trị trường này chính là số từ 16 bít mà số thứ tự
gói tin (sequence number) cần dịch trái.
Options và padding: phần còn lại của header của TCP định nghĩa các trường lựa chọn.
Chúng được dùng để khảo sát thông tin thêm cho bộ thu hoặc cho các mục đích liên kết. Nếu
có thì độ dài là bội số của 32 bít.

UDP header:
0 – 7
8 – 15
16 – 24
25 – 31
Source port
Destination port
Length
Checksum

Source port: Trường này xác định cổng của người gửi thông tin và có ý nghĩa nếu muốn
nhận thông tin phản hồi từ người nhận. Nếu không dùng đến thì đặt nó bằng 0.
Destination port: Trường xác định cổng nhận thông tin, và trường này là cần thiết.
Length: Trường có độ dài 16 bit xác định chiều dài của toàn bộ datagram: phần header và
dữ liệu. Chiều dài tối thiểu là 8 byte khi gói tin không có dữ liệu, chỉ có header.
Checksum: Trường checksum 16 bit dùng cho việc kiểm tra lỗi.


So sánh TCP header và UDP header
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


6

TCP và UDP là hai giao thức phổ biến nhất ở lớp transport của chồng giao thức mạng
TCP/IP, đều có chức năng kết nối các máy lại với nhau, và có thể gửi dữ liệu cho nhau. Các
header của TCP và UDP khác nhau ở kích thước (20 và 8 byte) nguyên nhân chủ yếu là do
TCP phải hộ trợ nhiều chức năng hữu ích hơn (như khả năng khôi phục lỗi). UDP dùng ít
byte hơn cho phần header và yêu cầu xử lý từ host ít hơn:

CHỨC NĂNG
TCP
UDP
Multiplexing dùng nhiều
cổng
Có. Chỉ số cổng nhận dạng
duy nhất một tiến trình trên
máy gửi và máy nhận
Có. Giống TCP

Truyền dữ liệu tuần tự
Có. TCP công nhận dữ liệu,
gửi lại những phân đoạn bị
mất. Các trường sequence và
ACK trong TCP header.
Không. UDP không có
khái niệm sắp xếp dữ liệu

Truyền tin cậy
Có. TCP công nhận dữ liệu,
gửi lại những phân đoạn bị
mất. Các trường sequence và
ACK trong TCP header.
Không hỗ trợ
Kiểm soát dòng
Có. TCP dùng các cửa sổ
trượt để kiểm tra các cửa sổ
của máy gửi.
Không hỗ trợ
Connection
Có. Quá trình bắt tay 3 lần
thiết lập quá trình khởi động
cổng
Phi kết nối
Kiểu giao thức của ip
6
17
RFC
793
768

5. Câu hỏi 5
Đọc một phần được trích từ RFC2960 về giao thức SCTP.
a. Tóm tắt cấu trúc của SCTP.
b. So sánh cấu trúc SCTP và TCP.
c. Cho biết ý nghĩa của stream identifier, stream sequence number.
Trả lời
a. Cu trúc ca SCTP

Một gói SCTP gồm có 2 phần chính: commun header chiếm 12 byte và datachunk chiếm
phần còn lại của gói.



0 – 7
8 – 15
16 – 23
24 - 31
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


7

Common Header
Chunk #1
Chunk #2

i. SCTP Common Header
0 – 7
8 – 15
16 – 23
24 - 31
Source Port
Destination Port
Verification Tag
Checksum

Source Port Number: số nguyên 16 bit không dấu. Đây là số hiệu của port tại máy gửi
SCTP. Nó có thể được sử dụng ở máy nhận trong việc kết hợp cùng với địa chỉ IP nguồn,

port SCTP đích và địa chỉ IP đích để xác định nó thuộc mảnh gửi tới thuộc vào gói nào.
Destination Port Number: Số nguyên 16 bit không dấu. đây là số hiệu của port tại máy
nhận. máy nhận sẽ dùng số port này để tách kênh các gói SCTP đến đúng ứng dụng.
Verification Tag: Số nguyên 32 bit không dấu. Máy nhận dùng số này để kiểm tra nơi
gởi gói SCTP này. Khi truyền đi, giá trị này phải được set bằng giá trị Initate Tag nhận được
từ điểm cuối ngang hàng trong quá trình khởi tạo mối liên kết, với các ngoại lệ:
 Một packet có chứa 1 INIT chungk phải được set Verification Tag bằng 0.
 1 packet chứa 1 SHUTDOWN-COMPLETE chunk với T-bit được set phải có
Verification Tag giống như gói chứa SHUTDOWN-ACK chunk.
 Một gói chứa một ABORT chunk có thể có Verification Tag giống như của gói là
nguyên nhân tạo ta ABORT.
Checksum: Số nguyên không dấu 32 bit. Trường này chứa checksum của gói SCTP.
ii. Chunk Field
0 – 7
8 – 15
16 – 23
24 - 31
Chunk Type
Chunk Flag
Chunk Length
Chunk Value

Chunk Type: Số nguyên không dấu 8 bit. Trường này xác định kiểu của thông tin xác
định trong trường Chunk Value. Có giá trị từ 0 – 254, giá trị 255 dự trữ
Chunk Flags: 8 bit. Cách dùng của các bit này phụ thuộc vào kiểu chunk được xác định
trong Chunk Type. Nếu kiểu chunk không được xác định, các bit này được xóa về 0 khi
truyền tải và bỏ quả khi nhận tin.
Chunk Length: Số nguyên không dấu 16 bit. Giá trị này đại diện cho kích thước của
chunk tính bằng byte bao gồm Chunk Type, Chunk Flags, Chunk Length, and Chunk Value
fields. Do đó, nếu Chunk Value có độ dài bằng 0, trường này được set bằng 4.

Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


8

Chunk Value: Giá trị này không cố định. Trường này chứa thông tin để truyền tải trong
chunk. Cách dùng và định dạng của trường này phụ thuộc vào Chunk Type.
b. So sánh cu trúc SCTP và TCP
Giống:
 SCTP và TCP đều sử dụng checksum để kiểm tra lỗi.
Khác:
 Checksum của SCTP dài tới 32 bit, gấp đôi so với TCP (16 bit) nhờ đó khả năng
phát hiện lỗi tốt hơn so với TCP.
 SCTP Định nghĩa 1 stream với 1 chuỗi các bản tin (chunk) không phải là byte
như TCP. Các chunk này có thể chunk dữ liệu hoặc chunk điều khiển. Đi kèm là
các thông tin của của chunk quy định trong các trường Chunk Type, Chunk
Length, Chunk Flags.
 TCP có trường Sequence Number đánh dấu số thứ tự của dữ liệu trong dữ liệu
gốc. SCTP không có trường này, vì dữ liệu được chứa trong các chunk và không
bị chia thành nhiều đoạn như TCP. SCTP có thể truyền tải nhiều dòng dữ liệu
trong 1 lần truyền tải (multi stream of data delivery) còn TCP chỉ hỗ trợ một
dòng dữ liệu (single stream)
 SCTP có thêm trường Verifiaction Tag để xác nhận nơi gửi gói SCTP.

c. Stream Identifier và stream squence number
Stream identifier: số nguyên không dấu 16 bit, xác định stream mà data chunk này thuộc
về. Mỗi DATA chunk phải mang theo một stream identifier hợp lệ. Nếu một máy cuối nhận
được DATA chunk với một stream identifier không hợp lệ, nó sẽ ngay lập tức gửi một
ERROR chunk dẫn tới “Invalid Stream Identifier” và xóa DATA chunk đó.
Stream sequence number: số nguyên không dấu 16 bit. Xác định số thứ tự chuỗi

(sequence number) của bản tin trong stream. Nếu bản tin bị phân mảnh thì giá trị này được
duy trì cho tất cả các mảnh. Stream sequence number ở mỗi stream thường bắt dầu từ 0 khi
kết nối được thành lập. Khi nó đạt giá trị 65535 thì stream sequence number tiếp theo lại
được set về 0


Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


9

B. MACHINEPROBLEM 7

1. Câu hỏi 1:
Trình bày các nguyên tắc phân chia các lớp trong mô hình OSI. Cho biết vì sao không
nên chia thành quá nhiều lớp hoặc quá ít lớp.
Trả lời
Mô hình OSI:

Nguyên tắc xây dựng mô hình OSI
 Tạo các ranh giới các tầng sao cho việc giải thích các phục vụ và số các tương tác
qua lại hai tầng là nhỏ nhất.
 Tạo các tầng riêng biệt cho các chức năng khác biệt nhau hoàn toàn về kỹ thuật sử
dụng hoặc quá trình thực hiên.
 Các chức năng giống nhau được đặt trong cùng một tầng.
 Lựa chọn ranh giới các tầng tại các điểm mà những thử nghiệm trong quá khứ
thành công.
 Các chức năng được xác định sao cho chúng có thể dễ dàng xác định lại, và các
nghi thức của chúng có thể thay đổi trên mọi hướng.
 Tạo ranh giới các tầng mà ở đó cần có những mức độ trừu tượng khác nhau trong

việc sử dụng số liệu.
 Cho phép thay đổi các chức năng hoặc giao thức trong tầng không ảnh hưởng đến
các tầng khác.
 Tạo các ranh giới giữa mỗi tầng với tầng trên và dưới nó.
Không nên chia thành quá nhiều lớp, vì như vậy thì quá trình gửi – nhận data sẽ có thể
diễn ra chính xác hơn nhưng độ trễ lớn do phải xử lý ở nhiều lớp chức năng, đồng thời còn
dẫn tới việc xác định và ghép nối các tầng phức tạp và chi ly.
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


10

Ngược lại, việc chia quá ít lớp dẫn tới mỗi tầng phải làm nhiều chức năng, cồng kềnh và
độ chính xác không được đảm bảo. Đồng thời việc kiểm tra và phát hiện lỗi cũng khó khăn
hơn.
2. Câu hỏi 2
Trình bày nguyên tắc hoạt động của spanning tree trong mạng Ethernet
Trả lời
Spanning Treeprotocol(STP) là một giao thức ngăn chặn sự lặp vòng, cho phép các bridge
truyền thông với nhau để phát hiện vòng lặp vật lý trong mạng. Sau đó giaothức này sẽ định
rõ một thuật toán mà bridge có thể tạo ra một topology luận lý chứa loop-free. Nói cách khác
STP sẽ tạo một cấu trúc cây của free-loop gồm các lávà các nhánh nối toàn bộ mạng lớp 2.
Vòng lặp xảy ra trong mạng với nhiều nguyên nhân. Hầu hết các nguyên nhân
thôngthường là kết quả của việc cố gắng tính toán để cung cấp khả năng dự phòng,
trongtrường hợp này, một link hoặckhôngbị hỏng, các link hoặc switch khác vẫn tiếp tụchoạt
động, tuy nhiên các vòng lặp cũng có thể xảy ra do lỗi.
Nguyên tắc: STP dùng các thông điệp giữa các switch để giúp ổn định hệ thống mạng về
một sơ đồ không bị vòng lặp. Để làm được như cậy, STP sẽ đưa vài cổng của switch về trạng
thái blocking, cổng sẽ không truyền hay nhận dữ liệu. Các cổng còn lại sẽ ở trạng thái
forwarding. Tất cả các loại cổng này sẽ giúp hình thành một sơ đồ mạng không bị loop.

Các bước diễn tiến của hoạt động của spanning tree
 Bầu chọn root switch: Switch có bridge-ID nhỏ nhất sẽ được bầu chọn. Thông
thường, bridgeID được hình thành gồm giá trị priority (2 bytes) và MAC của
switch.
 Xác định root port: là cổng trên những non-root switch có kết nối ngắn nhất về
rootswitch.
 Xác định designated port trên từng segment: Khi có nhiều switch kết nối vào một
segment, đây là cổng của switch chịu trách nhiệm đẩy traffic ra khỏi segment.
3. Câu hỏi 3:
Trình bày nguyên tắc hoạt động của ARP. Nếu không có ARP thì làm cách nào để mạng
hoạt động?
Trả lời
ARP là gì?

Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


11

Mỗi thiết bị mạng đều có một địa chỉ MAC (Medium Access Control address) và địa chỉ
đó là duy nhất. Các thiết bị trong cùng một mạng thường dùng địa chỉ MAC để liên lạc với
nhau tại tầng Data Link.
Trên thực tế, các card mạng (NIC) chỉ có thể kết nối với nhau theo địa chỉ MAC, địa chỉ
cố định và duy nhất của phần cứng. Do vậy ta phải có một cơ chế để chuyển đổi các dạng địa
chỉ này qua lại với nhau. Từ đó ta có giao thức phân giải địa chỉ: Address Resolution Protocol
(ARP).
Đây là giao thức dùng để chuyển đổi giữa địa chỉ lớp 3 thành địa chỉ vật lí lớp 2. Sở dĩ
cần phải có giao thức chuyển đổi như vậy là do có nhiều giao thức lớp 3 như IP; IPX,… mỗi
giao thức lại có qui ước về địa chỉ logic riêng. Khi được đóng gói vào một frame tại lớp thì
tất cả các địa chỉ này cần phải được qui đổi thành một kiểu địa chỉ thống nhất (địa chỉ MAC)

nhằm giúp cho mọi thiết bị có thể trao đổi với các thiết bị khác khi chúng nằm trong cùng
một môi trường truyền dẫn vật lí.
Mặc dù ARP là giao thức lớp 3, tuy nhiên nó lại được coi là giao thức IP cấp thấp bởi vì
gói tin ARP không được đóng gói với header của các giao thức lớp 3 mà được đóng gói bởi
frame lớp 2. ARP không chỉ được sử dụng trong mạng LAN ethernet mà còn có thể sử dụng
cho các mạng LAN dạng token ring hoặc FDDI.
Cu trúc ca 1 bn tin ARP bao g

Hardware type
Protocol type
HW addr length
Protocol addr length
Opcode
Source HW addr
Source Protocol addr
Destination HW addr
Destination protocol addr



 Hardware type và protocol type qui định kiểu của phần cứng và của protocol được
dùng ở lớp network
 Opcode: cho biết bản tin ARP là yêu cầu (=1) hoặc phúc đáp (=2)
 HW addr length: độ dài của địa chỉ vật lí.
 Protocol addr length: độ dài của địa chỉ logic.
 4 trường còn lại là địa chỉ vật lí và địa chỉ logic nguồn và đích.
Nguyên tc làm vic ca ARP trong mt mng LAN
Khi một thiết bị mạng muốn biết địa chỉ MAC của một thiết bị mạng nào đó mà nó đã
biết địa chỉ ở tầng network (IP, IPX…) nó sẽ gửi một ARP request bao gồm địa chỉ MAC
address của nó và địa chỉ IP của thiết bị mà nó cần biết MAC address trên toàn bộ một miền

broadcast.
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


12

Mỗi một thiết bị nhận được request này sẽ so sánh địa chỉ IP trong request với địa chỉ
tầng network của mình. Nếu trùng địa chỉ thì thiết bị đó phải gửi ngược lại cho thiết bị gửi
ARP request một gói tin (trong đó có chứa địa chỉ MAC của mình).
Nguyên tc hong cng h thng mng:
Hoạt động của ARP trong một môi trường phức tạp hơn đó là hai hệ thống mạng gắn với
nhau thông qua một Router C. Máy A thuộc mạng A muốn gửi gói tin đến máy B thuộc mạng
B. Do các broadcast không thể truyền qua Router nên khi đó máy A sẽ xem Router C như
một cầu nối hay một trung gian (Agent) để truyền dữ liệu. Trước đó, máy A sẽ biết được địa
chỉ IP của Router C (địa chỉ Gateway) và biết được rằng để truyền gói tin tới B phải đi qua
C.
Tất cả các thông tin như vậy sẽ được chứa trong một bảng gọi là bảng định tuyến (routing
table). Bảng định tuyến theo cơ chế này được lưu giữ trong mỗi máy. Bảng định tuyến chứa
thông tin về các Gateway để truy cập vào một hệ thống mạng nào đó.
Ví dụ trong trường hợp trên trong bảng sẽ chỉ ra rằng để đi tới LAN B phải qua port X
của Router C. Bảng định tuyến sẽ có chứa địa chỉ IP của port X. Quá trình truyền dữ liệu
theo từng bước sau :
 Máy A gửi một ARP request (broadcast) để tìm địa chỉ MAC của port X.
 Router C trả lời, cung cấp cho máy A địa chỉ MAC của port X.
 Máy A truyền gói tin đến port X của Router.
 Router nhận được gói tin từ máy A, chuyển gói tin ra port Y của Router. Trong gói
tin có chứa địa chỉ IP của máy B. Router sẽ gửi ARP request để tìm địa chỉ MAC của
máy B.
 Máy B sẽ trả lời cho Router biết địa chỉ MAC của mình. Sau khi nhận được địa chỉ
MAC của máy B, Router C gửi gói tin của A đến B.


4. Câu hỏi 4
Một gói IP có các thông tin sau:
• Type of Service: 16
• Identification: 256
• Time to Live: 64
• Protocol: 17 (UDP)
• Source: 137.226.12.206
• Destination: 198.182.196.56
Cho biết gói có mang dữ liệu với chiều dài 40 byte, không cho phép fragment và không có
option.
a. Tính checksum của phần header trong gói IP
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


13

b. Viết toàn bộ header của gói IP theo dạng hex
Trả lời
a. Tính checksum
- Phần header, với checksum chưa biết XXXX.
4510 003C 0100 4000 4011 XXXX 89E2 0CCE C6B6 C438
- Để tính check sum, đầu tiên, ta cộng tất cả các số 2 byte đã biết lại:
4510 + 003C + 0100 + 4000 + 4011 + 89E2 + 0CCE + C6B6 + C438 = 2E7FB
- Tiếp theo, ta chuyển kết quả vừa tính sang binary
2E7FB16 =0010 1110 0111 1111 1011
2

- Ta tách 4 bit dầu tiên ra, và cộng dồn vào số còn lại như sau:
0010 + 1110 0111 1111 1011 = 1110 0111 1111 1101

- Sau đó, ta đảo bít kết quả vừa tính
0001 1000 0000 0010
- Chuyển kết quả sang hệ HEXA, ta được giá trị của phần checksum: 1802

b. IP header:
45.10.00.3C
01.00.40.00
40.11.18.02
89.E2.0C.CE
C6.B6.C4.38

5. Câu hỏi 5
Cho sơ đồ mạng như hình vẽ bên dưới. Bạn được cung cấp dãy địa chỉ 118.23.32.0/22.
Mạng
Số host
LAN 1
127
LAN 2
255
LAN 3
15
LAN 4
12
LAN 5
95

Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


14



a. Chọn subnet mask phù hợp cho mỗi mạng LAN và cho biết khoảng địa chỉ khả dụng cho
mỗi mạng LAN.
b. Cho biết bảng routing của mỗi router.
Trả lời
a. Chọn subnet mask
Gọi n là số bit trong host ID, số host khả dụng trong một mạng là 2
n
– 2, số bit host ID và số
lượng địa chỉ khả dụng cho mỗi mạng ta chọn như sau:
Mạng
Số host trong mạng
Số bit host ID
Số host khả dụng
LAN 1
127
8
254
LAN 2
255
9
510
LAN 3
15
5
30
LAN 4
12
4

14
LAN 5
95
7
126

Với địa chỉ được cấp, ta có 32 – 22 = 10 bit để chia subnet. Ta bắt đầu với mạng lớn nhất, là
mạng LAN 2 với 9 bit Host ID.
Dùng thêm 1 bit, ta được 2 subnet:
Net ID
Số bit net ID
Địa chỉ
118.23.01000000.00000000
23
118.23.32.0/23
118.23.01000010.00000000
23
118.23.34.0/23

Ta dùng địa chỉ 118.23.32.0/23 cho LAN 2, và dùng 118.23.34.0/23 chia subnet cho các
mạng còn lại.
Mạng lớn thứ 2 là LAN 1, cần 8 bit host ID, ta lại dùng 1 bit tạo 2 subnet:
Net ID
Số bit net ID
Địa chỉ
118.23.01000010.00000000
24
118.23.34.0/24
118.23.01000011.00000000
24

118.23.35.0/24

Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


15

Ta dùng địa chỉ 118.23.34.0/24 cho LAN 1, và dùng 118.23.35.0/24 chia subnet cho các
mạng còn lại.
Mạng lớn thứ 3 là LAN 5, cần 7 bit host ID, dùng 1 bit tạo 2 subnet:
Net ID
Số bit net ID
Địa chỉ
118.23.01000011.00000000
25
118.23.35.0/25
118.23.01000011.10000000
25
118.23.35.128/25

Ta dùng địa chỉ 118.23.35.0/25 cho LAN 5, và dùng 118.23.35.128/25 chia subnet cho
các mạng còn lại.
Mạng lớn thứ 4 là LAN 3, cần 5 bit host ID, ta dùng 2 bit tạo 4 subnet:
Net ID
Số bit net ID
Địa chỉ
118.23.01000011.10000000
27
118.23.35.128/27
118.23.01000011.10100000

27
118.23.35.160/27
118.23.01000011.11000000
27
118.23.35.192/27
118.23.01000011.11100000
27
118.23.35.224/27

Ta dùng địa chỉ 118.23.35.128/27 cho LAN 3.
Còn lại LAN 4 cần 4 bit host ID, ta dùng 1 bit host ID chia địa chỉ 118.23.35.160/27
thành 2 subnet:
Net ID
Số bit net ID
Địa chỉ
118.23.01000011.10000000
28
118.23.35.160/28
118.23.01000011.10110000
28
118.23.35.176/28

Và dụng địa chỉ 118.23.35.160/28 cho LAN 4.
Như vậy ta đã chia địa chỉ thành công cho các mạng LAN 1, LAN 2, LAN 3, LAN 4,
LAN 5 và còn dư 3 subnet:
 118.23.35.192/27
 118.23.35.224/27
 118.23.35.176/28

b. Bảng Routing cho các mạng

Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


16


Router 1
Destination
Port
Distance

118.23.34.0/24
Fa0/1
1
LAN 1
118.23.32.0/23
Fa0/0
1
LAN 2
118.23.35.128/27
Fa0/0
2
LAN 3
118.23.35.160/28
Fa0/0
3
LAN 4
118.23.35.0/25
Fa0/0
4

LAN 5
Router 2
Destination
Port
Distance
118.23.34.0/24
Fa0/0
2
118.23.32.0/23
Fa0/0
1
118.23.35.128/27
Fa0/1
1
118.23.35.160/28
Fa0/1
2
118.23.35.0/25
Fa0/1
3
Router 3
Destination
Port
Distance
118.23.34.0/24
Fa0/0
3
118.23.32.0/23
Fa0/0
2

118.23.35.128/27
Fa0/0
1
118.23.35.160/28
Fa0/1
1
118.23.35.0/25
Fa0/1
2

Router 4
Destination
Port
Distance
118.23.34.0/24
Fa0/1
4
118.23.32.0/23
Fa0/1
3
118.23.35.128/27
Fa0/1
2
118.23.35.160/28
Fa0/1
1
118.23.35.0/25
Fa0/0
1


118.23.32.0/23
118.23.35.128/27
118.23.35.160/28
118.23.34.0/24
118.23.35.0/25
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


17

C. MACHINE PROLEM 8

1. Câu hỏi 1
Trình bày sự cần thiết của Spanning Tree Protocol. Cho biết nguyên tắc hoạt động của
STP. STP hoạt động trên lớp nào trong môn hình OSI 7 lớp.
Trả lời
Trong môi trường lớp 2 (switching hoặc bridging), không sử dụng giao thức định tuyến
và cũng không cho phép các con đường dự phòng, thay vì bridge cung cấp việc truyền dữ liệu
giữa các mạng hoặc các cổng của switch. Giao thức Spanning Tree cung cấp liên kết
dự phòng để mạng chuyển mạch lớp 2 có thể khôi phục từ lỗi mà không cần có sự can thiệp
kịpthời
Spanning Tree Protocol (STP) là một giao thức ngăn chặn sự lặp vòng, cho phép
các bridge truyền thông với nhau để phát hiện vòng lặp vật lý trong mạng. Sau đó giao thức
nàysẽ định rõ một thuật toán mà bridge có thể tạo ra một cấu trúc mạng logic chứa vòng lặp
(loop-free). Nói cách khác STP sẽ tạo một cấu trúc cây của free-loop gồm các lá và cácnhánh
nối toàn bộ mạng lớp 2.
Các bước diễn tiến của hoạt động của spanning tree
 Bầu chọn root switch: Switch có bridge-ID nhỏ nhất sẽ được bầu chọn. Thông
thường, bridgeID được hình thành gồm giá trị priority (2 bytes) và MAC của
switch.

 Xác định root port: là cổng trên những non-root switch có kết nối ngắn nhất về
rootswitch.
 Xác định designated port trên từng segment: Khi có nhiều switch kết nối vào một
segment, đây là cổng của switch chịu trách nhiệm đẩy traffic ra khỏi segment.

2. Câu hỏi 2
Giải thích các field trong TCP header trong hình 1. Dựa trên cấu trúc của UDP header, cho
biết các dịch vụ mà UDP cung cấp cho các lớp trên. So sánh các dịch vụ, tính năng của UDP
và TCP.
Trả lời
TCP header: đã giải thích ở câu hỏi 4 trong machine problem 6
UDP header:
0 – 7
8 – 15
16 – 24
25 – 31
Source port
Destination port
Length
Checksum

Source port: Trường này xác định cổng của người gửi thông tin và có ý nghĩa nếu muốn
nhận thông tin phản hồi từ người nhận. Nếu không dùng đến thì đặt nó bằng 0.
Destination port: Trường xác định cổng nhận thông tin, và trường này là cần thiết.
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


18

Length: Trường có độ dài 16 bit xác định chiều dài của toàn bộ datagram: phần header và

dữ liệu. Chiều dài tối thiểu là 8 byte khi gói tin không có dữ liệu, chỉ có header.
Checksum: Trường checksum 16 bit dùng cho việc kiểm tra lỗi của phần header và dữ
liệu.
Các tính năng và dịch vụ cung cấp của STP và UDP:
Services/Features
TCP
UDP
Hướng liên kết

Không
Song công


Tin cậy

Không
Nhận dữ liệu có thứ tự

Không
Nhận dữ liệu không có thứ tự
Không

Điều khiển luồng

Không
Điều khiển tắc nghẽn

Không
Cơ chế ECN


Không
Selective ACKs
Tùy chọn
Không
Hướng bản tin
no

Tìm lại đường MTU

Không
Phân mảnh PDU tầng ứng dụng

Không
Bọc các PDU tầng ứng dụng

Không
Kêt nối half-closed

Không
Kiểm tra dữ liệu tới đích

Không
Giả tiều đề cho checksum


Trạng thái đợi
4-tuple
Không

3. Câu hỏi 3

Cho địa chỉ IP: 12.5.21.56/255.255.255.240. Hãy tìm:
a) Địa chỉ mạng con
b) Địa chỉ máy có IP này
c) Địa chỉ Broadcast
d) Địa chỉ router chạy RIP trong mạng này.
Trả lời
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


19

a) Địa chỉ mạng con
Ta đổi: 240
10
= 1111 0000
2
mạng này dùng 28 bit làm Net ID.
Xét byte cuối: 56
10
= 0011 1000
 Byte cuối của địa chỉ mạng con: 0011 0000
2
= 48
10

 Địa chỉ mạng con: 12.5.21.48
b) Địa chỉ máy:
Xét byte cuối của IP: 56
10
= 0011 1000

2
. Mạng này có 32 – 28 = 4 bit làm host ID, do đó
địa chỉ máy mang địa chỉ IP này là 1000
c) Địa chỉ broadcast:
Đổi byte cuối: 0011 1111
2
= 63
10
 địa chỉ broadcast: 12.5.21.63
d) Địa chỉ router chạy RIP
Địa chỉ IP chạy RIP trong mạng này có thể là :
12.5.21.48/2812.5.21.62/28 ngoại trừ 12.5.21.56/28
4. Câu hỏi 4
Có các địa chỉ IP: (1 điểm)
 203.162.4.15/255.255.255.240
 203.162.4.25/255.255.255.240
 203.162.4.26/255.255.255.240
 203.162.4.125/255.255.255.240
 203.162.4.215/255.255.255.240
 203.162.4.205/255.255.255.240
 203.162.4.65/255.255.255.240
 203.162.4.85/255.255.255.240
Sắp xếp các địa chỉ theo từng Subnet.
Trả lời
Đổi: 240
10
= 1111 0000
2
 các địa chỉ này dùng 28 bit làm Net ID và 4 bit làm host ID. Ta
xét oclet cuối của mỗi địa chỉ

STT
Địa chỉ
Oclet cuối
Net ID
1
203.162.4.15
0000 1111
203.162.4.0
2
203.162.4.25
0001 1001
203.162.4.16
3
203.162.4.26
0001 1010
203.162.4.16
4
203.162.4.125
0111 1101
203.162.4.112
5
203.162.4.215
1101 0111
203.162.4.208
6
203.162.4.205
1100 1101
203.162.4.192
7
203.162.4.65

0100 0001
203.162.4.64
8
203.162.4.85
0101 0101
203.162.4.80

Vậy trong các địa chỉ trên chỉ có địa chỉ 2 và 3 là cùng mạng (cùng net ID)
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


20

5. Câu hỏi 5
VLAN:
a. Cho biết VLAN là gì và hoạt động của VLAN. Trong định nghĩa VLAN, cho biết
khái niêm "trunk" là gì.


b. Mô tả chi tiết quá trình di chuyển của một frame đi từ PC0 đến PC1. Tại sao PC2
(thuộc VLAN 20) lại không nhận được frame từ PC0 như PC1 trong hình vẽ số 2.

c. Mạng một công ty như trong hình 3 với 2 switches và 4 PCs. Có 2 VLAN: VLAN10
và LAN20. VLAN10: PC0 (10.0.1.1/24), PC2 (10.0.1.2/24); VLAN20: PC1
(10.0.1.12/24), PC3 (10.0.2.14/24). Cấu hình các thiết bị sao cho PCs sao cho PC
trong cùng VLAN có thể gởi dữ liệu. PCs khác VLAN không thể nhận dữ liệu. Giả sử
switch chạy IOS (Cisco). Dùng packet tracer để mô phỏng.
Bài làm
a. VLAN
VLAN là cụm từ viết tắt của Virtual Local Area Network (hay virtual LAN) hay còn được

gọi là mạng LAN ảo. VLAN là một kỹ thuật cho phép tạo lập các mạng LAN độc lập một
cách logic trên cùng một kiến trúc hạ tầng vật lý. Việc tạo lập nhiều mạng LAN ảo trong
cùng một mạng cục bộ giúp giảm thiểu vùng quảng bá (broadcast domain) cũng như tạo
thuận lợi cho việc quản lý một mạng cục bộ rộng lớn.
Trunk: là một kết nối point-to-point để hỗ trợ các VLAN trên các switch liên kết với
nhau. Một đường được cấu hình Trunk sẽ gộp nhiều liên kết ảo trên một liên kết vật lý để
chuyển tín hiệu từ các VLAN trên các switch với nhau dựa trên một đường cáp vật lý.
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


21

b. Quá trình di chuyển frame
Do PC0 và PC1 nằm trong cùng VLAN10, quá trình gửi frame từ PC0 sang PC1 diễn ra
tuần tự, đi từ PC0  Switch0  Switch1  PC1 và sau đó là ngược lại.


Các gói lưu thông trong mạng trong quá trình gửi đều có địa chỉ nguồn và đích giống
nhau, nguồn là 0030.F265.3DBB (PC0) và đích là 000A.F372.4642 (PC1)


Khi gửi gói từ PC0 sang PC2, tại PC2, thông tin của gói có dest là 10.0.1.10 (PC2) và src
là 10.0.1.1 (PC0):
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


22


Tuy nhiên khi gửi:




Vì PC0 và PC2 không cùng mạng nên ARP không thể phân giải địa chỉ 10.0.1.10, PC0
không biết địa chỉ đích ở đâu nên không thể gửi gói. Kết quả là PC0 và PC2 không thể gửi –
nhận gói được.
c. Cấu hình mạng VLAN
**Cấu hình cho Switch1:
Switch>enable
Switch#configure terminal
Switch(config)#hostname Switch1
Switch1(config)#vlan 10
Switch1(config-vlan)#name vlan10
Switch1(config-vlan)#exit
Switch1(config)#vlan 20
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


23

Switch1(config-vlan)#name vlan20
Switch1(config-vlan)#exit
Switch1(config)#interface GigabitEthernet1/1
Switch1(config-if)#switchport mode trunk
Switch1(config-if)#exit
Switch1(config)#interface GigabitEthernet1/2
Switch1(config-if)#switchport mode trunk
Switch1(config-if)#exit
Switch1(config)#interface FastEthernet0/1
Switch1(config-if)#switchport access vlan 10

Switch1(config-if)#exit
Switch1(config)#interface FastEthernet0/2
Switch1(config-if)#switchport access vlan 20
Switch1(config-if)#exit
Switch1(config)#exit

**Cấu hình cho Switch2:
Switch>enable
Switch#configure terminal
Switch(config)#hostname Switch2
Switch2(config)#vlan 10
Switch2(config-vlan)#name vlan10
Switch2(config-vlan)#exit
Switch2(config)#vlan 20
Switch2(config-vlan)#name vlan20
Switch2(config-vlan)#exit
Switch2(config)#interface GigabitEthernet1/1
Switch2(config-if)#switchport mode trunk
Switch2(config-if)#exit
Switch2(config)#interface GigabitEthernet1/2
Switch2(config-if)#switchport mode trunk
Bài tập về nhà môn Thông Tin Dữ Liệu Mạng SVTH: Nguyễn Văn Nhân


24

Switch2(config-if)#exit
Switch2(config)#interface FastEthernet0/1
Switch2(config-if)#switchport access vlan 10
Switch2(config-if)#exit

Switch2(config)#interface FastEthernet0/2
Switch2(config-if)#switchport access vlan 20
Switch2(config-if)#exit
Switch2(config)#exit
**Kết quả thực hiện

Ta lần lượt thực hiện ping giữa các máy trong cùng một VLAN và giữa hai VLAN khác
nhau:

1. Ping trong cùng một VLAN

Ping PC2 (10.0.1.2, VLAN10) từ PC0 (10.0.1.1, VLAN10), được kết quả sau:



Ping PC3 (10.0.1.24/24, VLAN20) từ PC1 (10.0.1.12/24, VLAN20) cũng cho kết quả tương
tự:

×