You are on page 1of 13

TRƯỜNG ĐẠI HỌC BÁCH KHOA TP.

HCM

KHOA ĐIỆN ĐIỆN TỬ



BÀI CHUẨN BỊ THÍ NGHIỆM


MÔN TRUYỀN SỐ LIỆU VÀ MẠNG

GV hướng dẫn: Thầy: Phan Trọng Khôi


Sinh viên thực hiện: Trương Quang Tịnh
MSSV:1513521
Nhóm :A12
Tổ:7
1. a) Quá trình đóng gói-Encapsulation

Cũng ở trong hình ta có thể thấy đơn vị dữ liệu cho các layers:
-Transport: Segments
-Network: Packets
-Data link: Frames
-Physical: Bits
Các segments sẽ đc đưa xuống Network layer để thêm vào IP header, mục đích của
Network layers là đánh địa chỉ mạng và chỉ đường đi cho gói tin trên mạng. Địa
chỉ mạng(ví dụ IP) có mục đích là đưa Segments đến đúng nơi nhận/ Segments sau
khi đc thêm IP header của Network layer thì đc gọi là Packets hay datagram.

Khi packet xuống đến Datalink layer thì sẽ đc đóng gói thành các frame. Frame
header mang theo thông tin về địa chỉ vật lý của host nguồn và host đích.
Ở trên ta thấy các packet đc đóng gói thành các frame sẽ đc đưa thêm vào 2 thông
tin là LLC header và MAC header. Tại sao trong Datalink layer lại có tới 2 thông
tin đc thêm vào?
Điều đó là do trong Datalink layer có 2 sublayer(layer con) là Logical Link
Control(LLC) và Media Access Control(MAC)

- Lớp LLC liên kết với Network layer để xác định loại địa chỉ logic đang dùng
là gì và sẽ đóng gói frame theo kiểu tương ứng
- Lớp MAC lại kết hợp với lớp cuối cùng là Physical l để biết môi trường
truyền dẫn bên dưới là gì để có cách thức sử dụng phù hợp
Để đưa các frame này lên mạng thì các thông tin phải đc chuyển sang dạng tín hiệu
digital. Physical layer có trách nhiệm sẽ mã hóa các thông tin thành các chuỗi bit 0
1 để các thiết bị có thể đọc đc.

b)Quá trình mở gói De-Encapsulation


Sau khi quá trình Encapsulation diễn ra ở bên gửi và thông tin đã đc gửi qua bên
nhận bằng các bit 0 1 thì bên nhận sẽ thực hiện quá trình tái kiến trúc lại các thông
tin
- Sau khi nhận đc các bit 0 1 thì bên nhận sẽ đồng bộ các tín hiệu digital và sau đó
sẽ decode các tín hiệu digital. Bên gửi sẽ tiến hành việc xây dựng lại các frames từ
các thông tin ở Physical layer đưa lên.
- Khi các thiết bị bắt đầu việc xây dựng lại frames thì sẽ check các thông tin từ
FCS(Frame Check Sequence) để xác định đúng thứ tự các frame và check lỗi), nếu
sai bất kỳ một thông tin nào đó hoặc trong quá trình vận chuyển xảy ra lỗi thì sẽ bị
loại bỏ. Các thông tin sau khi đc kiểm tra, nếu vẫn ổn thì sẽ đc đưa vào các frame.
- Sau khi đã rebuild lại Frame thì frame sẽ đc đưa lên Network layer, ở đây frame
header sẽ đc gỡ bỏ và thông tin đc kiểm tra đó là IP header. Thông tin về địa chỉ
Logic(IP) sẽ đc kiểm tra ở đây, sau khi kiểm tra xong thì IP header sẽ đc gỡ bỏ để
đưa lên layer tiếp theo phía trên.
Cứ như vậy quá trình de-encapsulation sẽ đc diễn ra thông qua các layers và sau đó
sẽ đc biểu diễn thành các dữ liệu cho người dùng.

2. a) Unicast:
Unicast là 1 thuật ngữ được sử dụng để mô tả cách thức truyền tin được gửi từ 1
điểm đến 1 điểm khác. Trong trường hợp này chỉ có 1 nguồn gửi và 1 nguồn nhận.

Việc truyền Unicast, trong đó 1 gói tin được gửi từ 1 nguồn duy nhất đến 1 địa
điểm được quy định, vẫn là hình thức truyền chủ yếu trong mạng LAN và
Internet.Tất cả các mạng LAN (VD: Ethernet) và mạng IP hỗ trợ chế độ Unicast,
các ứng dụng sử dụng phương thức vận chuyển giao thức TCP ví dụ như Http,
Smtp, Ftp, Telnet).

b) Broadcast:
Broadcast là thuật ngữ được sử dụng để mô tả cách thức truyền tin được gửi từ 1
điểm đến tất cả các điểm khác. Trong trường hợp này, có 1 nguồn gửi nhưng thông
tin được gửi đến tất cả các nguồn nhận trong cùng 1 kết nối.

Broadcast được hỗ trợ trong hầu hết các mạng LAN (VD: Ethernet), được sử dụng
để gửi cùng 1 thông điệp cho tất cả các máy tính trong mạng LAN (ví dụ như bản
tin ARP: giao thức phân giải địa chỉ, truy vấn địa chỉ của tất cả các máy tính trong
cùng 1 mạng LAN). Giao thức lớp mạng (Ipv4) cũng hỗ trợ kiểu truyền Broadcast,
cho phép các gói tin được gửi đến mọi thiết bị trong cùng 1 mạng.

c) Multicast
Multicast là thuật ngữ được sử dụng để mô tả cách thức truyền tin được gửi từ 1
hoặc nhiều điểm đến 1 tập hợp các điểm khác. Trong trường hợp này có thể là 1
hoặc nhiều người gửi, và thông tin được phân phối cho 1 tập hợp các điểm
thu.Multicast hữu ích nếu 1 nhóm khách hàng yêu cầu 1 bộ dữ liệu chung cùng 1
lúc. Việc truyền Multicast sẽ có thể tiết kiệm băng thông 1 cách đáng kể.

3. a) Gói IP
Ý nghĩa của thông số như sau:

VERS (4 bits): chỉ version hiện hành của giao thức IP hiện được cài đặt, Việc có chỉ
số version cho phép có các trao đổi giữa các hệ thống sử dụng version cũ và hệ thống
sử dụng version mới.
HLEN (4 bits): chỉ độ dài phần đầu (Internet header Length) của gói tin datagram,
tính theo đơn vị từ ( 32 bits). Trường này bắt buột phải có vì phần đầu IP có thể có
độ dài thay đổi tùy ý. Độ dài tối thiểu là 5 từ (20 bytes), độ dài tối đa là 15 từ hay là
60 bytes.
Type of service (8 bits): đặc tả các tham số về dịch vụ nhằm thông báo cho mạng
biết dịch vụ nào mà gói tin muốn được sử dụng, chẳng hạn ưu tiên, thời hạn chậm
trễ, năng suất truyền và độ tin cậy.
Total Length (16 bits): chỉ độ dài toàn bộ gói tin, kể cả phần đầu tính theo đơn vị
byte với chiều dài tối đa là 65535 bytes. Hiện nay giới hạn trên là rất lớn nhưng trong
tương lai với những mạng Gigabit thì các gói tin có kích thước lớn là cần thiết.
Identification (16 bits): cùng với các tham số khác (như Source Address và
Destination Address) tham số này dùng để định danh duy nhất cho một datagram
trong khoảng thời gian nó vẫn còn trên liên mạng.
Flags (3 bits): liên quan đến sự phân đoạn (fragment) các datagram, Các gói tin khi
đi trên đường đi có thể bị phân thành nhiều gói tin nhỏ, trong trường hợp bị phân
đoạn thì trường Flags được dùng điều khiển phân đoạn và tái lắp ghép bó dữ liệu.
Tùy theo giá trị của Flags sẽ có ý nghĩa là gói tin sẽ không phân đoạn, có thể phân
đoạn hay là gói tin phân đoạn cuối cùng.
Fragment Offset (13 bits): chỉ vị trí của đoạn (fragment) ở trong datagram tính theo
đơn vị 8 bytes, có nghĩa là phần dữ liệu mỗi gói tin (trừ gói tin cuối cùng) phải chứa
một vùng dữ liệu có độ dài là bội số của 8 bytes. Điều này có ý nghĩa là phải nhân
giá trị của Fragment offset với 8 để tính ra độ lệch byte.
Time to Live (8 bits): qui định thời gian tồn tại (tính bằng giây) của gói tin trong
mạng để tránh tình trạng một gói tin bị quẩn trên mạng. Thời gian này được cho bởi
trạm gửi và được giảm đi (thường qui ước là 1 đơn vị) khi datagram đi qua mỗi
router của liên mạng. Thời lượng này giảm xuống tại mỗi router với mục đích giới
hạn thời gian tồn tại của các gói tin và kết thúc những lần lặp lại vô hạn trên mạng.
Protocol (8 bits): chỉ giao thức tầng trên kế tiếp sẽ nhận vùng dữ liệu ở trạm đích
(hiện tại thường là TCP hoặc UDP được cài đặt trên IP). Ví dụ: TCP có giá trị trường
Protocol là 6, UDP có giá trị trường Protocol là 17.
Header Checksum (16 bits): Mã kiểm soát lỗi của header gói tin IP.
Source Address (32 bits): Địa chỉ của máy nguồn.
Destination Address (32 bits): Địa chỉ của máy đích
Options (độ dài thay đổi): khai báo các lựa chọn do người gửi yêu cầu (tuỳ theo
từng chương trình).
Padding (độ dài thay đổi): Vùng đệm, được dùng để đảm bảo cho phần header luôn
kết thúc ở một mốc 32 bits.
Data (độ dài thay đổi): Chứa thông tin lớp trên gửi xuống tối đa 64 Kb.
Source Address và Destination Address là một địa chỉ IP với độ dài 32 bít ở phần
sau chúng ta sẽ phân tích kỹ lưỡng về địa chỉ IP.

b) Khung Ethernet

Preamble Destination Source Type Data CRC

Preamble : 8 byte báo hiệu bắt đầu một frame.


Destination : 6 byte thể hiện địa chỉ MAC(1) đích.
Source : 6 byte thể hiện địa chỉ MAC(1) nguồn.
Type : 2 byte chỉ rõ giao thức lớp mạng.
Data : dữ liệu được chuyển đi.
CRC(2) : 4 byte kiểm tra lỗi của Frame. (Cyclic Redundancy Check)

c) Gói TCP
Một gói tin TCP bao gồm 2 phần
- Header (có độ dài 20 bytes)
- Dữ liệu

Header
+ Bít 0 - 3 4-9 10 - 15 16 - 31
0 Source Port Destination Port
32 Sequence Number
64 Acknowledgement Number
Data
96 Reserved Flags Window
Offset
128 Checksum Urgent Pointer
160 Options (optional)

160/192+ Data

Source port: Số hiệu của cổng tại máy tính gửi.


Destination port: Số hiệu của cổng tại máy tính nhận.
Sequence number: Trường này có 2 nhiệm vụ. Nếu cờ SYN bật thì nó là số thứ tự
gói ban đầu và byte đầu tiên được gửi có số thứ tự này cộng thêm 1. Nếu không có
cờ SYN thì đây là số thứ tự của byte đầu tiên.
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 quy đị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: Số byte có thể nhận bắt đầu từ giá trị của trường báo nhận (ACK)
Checksum: 16 bít kiểm tra cho cả phần header và dữ liệu

4. Giống nhau :
Đều là các 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….
Khác nhau (cơ bản):
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
TCP :
– Dùng cho mạng WAN
– Không cho phép mất gói tin
– Đảm bảo việc truyền dữ liệu
– Tốc độ truyền thấp hơn UDP
UDP:
– Dùng cho mạng LAN
– Cho phép mất dữ liệu
– Không đảm bảo.
– Tốc độ truyền cao, VolP truyền tốt qua UDP
TCP hoạt động theo hướng kết nối (connection-oriented), trước khi truyền dữ liệu
giữa 2 máy, nó thiết lập một kết nối giữa 2 máy theo phương thức “bắt tay 3 bước
(three-way-hand-shake)” bằng cách gửi gói tin ACK từ máy đích sang máy nhận,
trong suốt quá trình truyền gói tin, máy gửi yêu cầu máy đích xác nhận đã nhận đủ
các gói tin đã gửi, nếu có gói tin bị mất, máy đích sẽ yêu cầu máy gửi gửi lại,
thường xuyên kiểm tra gói tin có bị lỗi hay ko, ngoài ra còn cho phép qui định số
lượng gói tin được gửi trong một lần gửi (window-sizing), điều này đảm bảo máy
nhận nhận được đầy đủ các gói tin mà máy gửi gửi đi => truyền dữ liệu chậm hơn
UDP nhưng đáng tin cậy hơn UDP

UDP hoạt động theo hướng ko kết nối (connectionless), ko yêu cầu thiết lập kết nối
giữa 2 máy gửi và nhận, ko có sự đảm bảo gói tin khi truyền đi cũng như ko thông
báo về việc mất gói tin, ko kiểm tra lỗi của gói tin

=> truyền dữ liệu nhanh hơn UDP do cơ chế hoạt động có phần đơn giản hơn tuy
nhiên lại ko đáng tin cậy bằng TCP

– Ngoài ra:

+ UDP có độ trễ nhỏ, do không có giai đoạn thiết lập đường truyền

+ UDP nó đơn giản: Phía gửi và phía nhận không phải ghi nhớ trạng thái gửi/nhận.

+ small segment header

+ Không có cơ chế kiểm soát tắc nghẽn, do đó bên gửi có thể gửi dữ liệu với tốc độ
tối đa

5. a) 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. 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). Trong một hệ thống mạng đơn giản, ví dụ như PC
A muốn gửi gói tin đến PC B và nó chỉ biết được địa chỉ IP của PC B. Khi đó PC
A sẽ phải gửi một ARP broadcast cho toàn mạng để hỏi xem “địa chỉ MAC của PC
có địa chỉ IP này là gì ?” Khi PC B nhận được broadcast này, nó sẽ so sánh địa chỉ
IP trong gói tin này với địa chỉ IP của nó. Nhận thấy địa chỉ đó là địa chỉ của mình,
PC B sẽ gửi lại một gói tin cho PC A trong đó có chứa địa chỉ MAC của B. Sau đó
PC A mới bắt đầu truyền gói tin cho B.

Nguyên tắc hoạt động của ARP trong môi trườ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.
Trên thực tế ngoài dạng bảng định tuyến này người ta còn dùng phương pháp
proxyARP, trong đó có một thiết bị đảm nhận nhiệm vụ phân giải địa chỉ cho tất cả
các thiết bị khác.Theo đó các máy trạm không cần giữ bảng định tuyến nữa Router
C sẽ có nhiệm vụ thực hiện, trả lời tất cả các ARP request của tất cả các máy

b) Chức năng
ARP được sử dụng để từ một địa chỉ mạng (ví dụ một địa chỉ IPv4) tìm ra địa chỉ
vật lý như một địa chỉ Ethernet (địa chỉ MAC), hay còn có thể nói là phân giải địa
chỉ IP sang địa chỉ máy. ARP đã được thực hiện với nhiều kết hợp của công nghệ
mạng và tầng liên kết dữ liệu, như IPv4, Chaosnet,..

Trong mạng máy tính của phiên bản IPv6, chức năng của ARP được cung cấp
bởi Neighbor Discovery Protocol (NDP).

7.a) Chức năng:


Internet Control Message Protocol (viết tắt là ICMP), là một giao thức của gói
Internet Protocol. Giao thức này được các thiết bị mạng như router dùng để gửi đi
các thông báo lỗi chỉ ra một dịch vụ có tồn tại hay không, hoặc một địa chỉ host
hay router có tồn tại hay không. ICMP cũng có thể được sử dụng để chuyển tiếp
các thông điệp truy vấn. Giao thức này được đánh số 1. ICMP khác với các giao
thức vận chuyển như TCP và UDP ở chỗ nó không thường được sử dụng để trao
đổi dữ liệu giữa các hệ thống, cũng không thường xuyên được sử dụng bởi các ứng
dụng mạng của người dùng cuối (với ngoại lệ của một số công cụ chẩn đoán
như ping và traceroute).

b) Cấu Trúc:
ICMP sử dụng IP để làm cơ sở thông tin liên lạc bằng cách giải thích chính nó như
là một lớp giao thức cao hơn, d. h. thông điệp ICMP được đóng gói trong các gói
tin IP.

ICMP nhận ra một số tình trạng lỗi, nhưng không làm IP trở thành một giao thức
đáng tin cậy.

ICMP phân tích sai sót trong mỗi gói IP, trừ các đối tượng mà mang một thông
điệp ICMP.
Thông điệp ICMP không được gửi để trả lời các gói tin gởi tới các điểm đến mà có
các địa chỉ multicast hoặc broadcast.

Thông điệp ICMP chỉ trả lời một địa chỉ IP định rõ.

7.a) Telnet (viết tắt của TErminaL NETwork) là một giao thức mạng (network
protocol) được dùng trên các kết nối với Internet hoặc các kết nối tại mạng máy
tính cục bộ LAN.

b) Các bước thực hiện Telnet:

Truy cập vào router (bằng đường console hoặc telnet), sau khi truy cập thành công,
dấu nhắc dòng lệnh trên router sẽ hiện ra như sau:
Router>

Vào mức previlidge


Router>enable
Router#

Vào mức cấu hình global (config global)


Router#config terminal

Vào mức cấu hình telnet


Router(config)#line vty 0 4
!!! ở đây hai số 0 và 4 là số hiệu phiên telnet, như vậy bằng câu lệnh này, có thể
thực hiện 5 phiên telnet vào router với số hiệu từ phiên 0 đến phiên 4.

Trong mức cấu hình telnet, đặt password cho truy cập
Router(config-line)#password cisco
Router(config-line)#login

Yêu cấu cho việc thực hiện telnet:


1. Giữa máy chủ và máy trạm phải có kết nối IP. Kết nối đó có thể là đơn giản và
trực tiếp trong một subnet hoặc có thể ở các subnet khác nhau và có định tuyến:
2. Dịch vụ telnet phải được bật
3. Gói tin TCP port 23 (port của telnet không bị tường lửa chặn)

Ngoài ra có thể: Bắt đầu từ command prompt, gõ vào telnet, nếu bạn dùng 9x, nó
sẽ đưa bạn vào trình windows telnet. Bạn cũng có thể chạy ở menu Start/Run.
Ở chế độ đánh lệnh, bạn có thể dùng các lệnh sau:
OPEN <hostname/site address> <port number> : mở một kết nốI đến máy tính ở
xa, gọi là 1 telnet session
CLOSE : đóng kết nối và trở về dấu nhắc đợI lệnh
QUIT: đóng kết nối và thoát telnet
<ENTER> : nhấn phím enter sẽ đưa bạn thoát khỏI chế độ dấu nhắc lệnh và trở lại
telnet session
SET ECHO: bật/tắt chế độ hiện các lệnh đánh vào trong windows telnet. Lưu ý
trong 2k sẽ là SET LOCAL_ECHO
Để kết nối, ta dùng lệnh OPEN hoặc cũng có thể trực tiếp bằng lệnh
telnet <hostname/site address> <port number>

Ngày nay, telnet được dùng trong các ứng dụng:

Ðọc mail:
Các internet mail server cho phép truy cập thông qua giao thức POP (Post Office
Protocol), cổng 110. Nếu POP server bạn đang dùng là anyhost.com, thì ta sẽ dùng
lệnh sau: telnet anyhost.com 110
Một số các lệnh có thể bạn cần dùng khi truy cập POP email
USER <username> : mở hộp thư của username
PASS <password> : mật khẩu cho hộp thư
LIST : liệt kê các emails trong hộp thư
RETR <email number> : xem thư có thứ tự là number, được liệt kê trong lệnh
LIST
TOP <email number> <message lines> : xem thư như RETR, nhưng dừng lại khi
hiện được số dòng nhất định
DELE <email number> : xóa thư có thứ tự number
QUIT : đóng telnet session

Gửi mail:
Tương tự như trên, các internet mail server sẽ cung cấp một giao thức là SMTP
(Simple Mail Transfer Protocol) cho phép bạn send email thông qua server đó,
cổng 25.

Một số lệnh bạn cần dùng:


HELO <hostname> : giới thiệu host, thông tin này không cần thiết
MAIL FROM: <email của người gửi>
RCPT TO: <emails của người nhận>
DATA <nhập data của bạn>: sau khi enter, bạn nhập nội dung email. Sau khi nhập
xong, muốn kết thúc, bạn phải xuống hàng và nhập dấu chấm '.'
RSET xóa các thông tin lần gửi mới nhất, dùng khi bạn muốn gửi đến một người
khác
QUIT : thoát
HELP <lệnh> xem trợ giúp về các lệnh, lệnh này tùy thuộc vào mail server bạn
đang connect

You might also like