Tầng này cung cấp liên kết giữa hai đầu cuối sử dụng dịch vụ phiên để đồng bộ trao đổi dữ liệu và khi kết thúc thì giải phóng liên kết.. Trong phương thức truyền đồng thời hay luân phiên
Trang 1TRƯỜNG ĐẠI HỌC HÒA BÌNH
KHOA CÔNG NGHỆ THÔNG TIN & ĐIỆN TỬ VIỄN THÔNG
- - - -
BÀI TẬP LỚN MÔN: NHẬP MÔN MẠNG MÁY TÍNH
Sinh viên thực hiện : Tạ Duy Bảo
Mã sinh viên : 521CNT1003
Giáo viên bộ môn : ThS Nguyễn Việt Đức
HÀ NỘI - 2023
Trang 2TRƯỜNG ĐẠI HỌC HÒA BÌNH
KHOA CÔNG NGHỆ THÔNG TIN & ĐIỆN TỬ VIỄN THÔNG
- - - -
BÀI TẬP LỚN MÔN: NHẬP MÔN MẠNG MÁY TÍNH
Sinh viên thực hiện : Tạ Duy Bảo
Mã sinh viên : 521CNT1003
Giáo viên bộ môn : ThS Nguyễn Việt Đức
HÀ NỘI - 2023
Trang 3Câu1: trình bầy khái quát về mô hình OSI 7 tầng Trình bầy về giao thức TCP, UDP
của tầng vận chuyển và cách thức chuyền tin cảu hai giao thức này
1 Khái quát về mô hình OSI 7 tầng:
Mô hình OSI là mô hình tham chiếu kết nối các hệ thống mở, một thiết kế dựa vào nguyên lý tầng cấp, lý giải một cách trừu tượng kỹ thuật kết nối truyền thông giữa các máy vi tính và thiết kế giao thức mạng giữa chúng Mô hình này được phát triển thành một phần trong kế hoạch Kết nối các hệ thống mở (Open Systems Interconnection) do ISO và IUT-T khởi xướng Nó còn được gọi là Mô hình bảy tầng của OSI
Tầng 7 - Application Layer (Tầng ứng dụng)
Tầng Application là tầng trên cùng trong mô hình, chịu trách nhiệm xác định giao diện giữa người dùng cuối và môi trường OSI Tầng Application cung cấp các giao thức giúp phần mềm gửi, nhận thông tin
và trình bày dữ liệu cho người dùng
Các đối tác giao tiếp, chất lượng dịch vụ sẽ được xác định, xem xét và cân nhắc xác thực người dùng, quyền riêng tư và bất kỳ ràng buộc nào
về cú pháp dữ liệu Tầng này chủ yếu cung cấp nền tảng làm việc (framework) mà ứng dụng đó chạy bên trên
Tầng 6 - Presentation Layer (Tầng trình bày)
Tầng Presentation giải quyết các vấn đề về cú pháp và ngữ nghĩa của thông tin truyền đi, nhằm biểu diễn thông tin phù hợp với thông tin làm việc của mạng và ngược lại Nói cách khác, sau khi lấy dữ liệu từ tầng Application, tầng này sẽ cung cấp khả năng biểu diễn dữ liệu độc lập (ví dụ: mã hóa) và biến đổi các dữ liệu này thành định dạng chuẩn để các tầng khác có thể hiểu được
Để giao tiếp mạng có thể diễn ra đúng cách, dữ liệu cần được cấu trúc theo một chuẩn nào đó, và công việc này diễn ra ở tầng Session Đôi khi tầng này còn được gọi là tầng syntax
Tầng 5 - Session Layer (Tầng phiên)
Tầng phiên cho phép người dùng trên nhiều máy khác nhau thiết lập, duy trì và đồng bộ phiên truyền thông với nhau Nói một cách đơn giản,
Trang 4tầng phiên có khả năng thiết lập “các giao dịch” giữa các thực thể đầu cuối
Tầng này cung cấp liên kết giữa hai đầu cuối sử dụng dịch vụ phiên để đồng bộ trao đổi dữ liệu và khi kết thúc thì giải phóng liên kết Trong phương thức truyền đồng thời hay luân phiên, quá trình này sử dụng token để truyền dữ liệu, đồng bộ hóa và hủy bỏ liên kết Nhờ thiết lập nhiều điểm đồng bộ hóa trong hội thoại nên khi xảy ra sự cố, hội thoại
có thể được khôi phục từ một điểm đồng bộ hóa đã thỏa thuận
Tầng 4 - Transport Layer (Tầng vận chuyển)
Tầng 4 trong mô hình OSI là tầng cao nhất liên quan đến các giao thức trao đổi dữ liệu giữa các hệ thống mở Tầng này hỗ trợ các chuyển giao
dữ liệu trong suốt giữa các end system hoặc các host, chịu trách nhiệm cho việc phục hồi lỗi end-to-end và kiểm soát luồng từ đầu đến cuối Windows cho phép người dùng có thể chạy nhiều ứng dụng cùng lúc,
do đó, hệ điều hành sẽ hỗ trợ cho các giao tiếp đồng thời Tầng Transport sẽ lấy dữ liệu từ các ứng dụng và tích hợp chúng trong cùng một luồng để chuyển giao dữ liệu Về cơ bản, tầng này giúp đảm bảo chu trình truyền dữ liệu hoàn chỉnh từ máy gửi đến máy nhận
Tầng 3 - Network Layer (Tầng mạng)
Tầng 3 cung cấp các công nghệ chuyển mạch và định tuyến, tạo các logic path hay còn được biết đến là các mạch ảo, để truyền dữ liệu từ node này sang node khác Định tuyến và chuyển tiếp là các chức năng
cơ bản của tầng này cũng như address, internetworking, xử lý lỗi, kiểm soát tắc nghẽn và trình tự packet
Hiểu một cách cơ bản, tại tầng network này, dữ liệu sẽ được chia thành các gói nhỏ để tránh tình trạng kích thước dữ liệu vượt quá dung lượng tối đa của 1 gói, sau đó thực hiện gán cho mỗi gói một thứ tự nhận dạng Ở phía máy người nhận, khi dữ liệu đến, tầng network sẽ chịu trách nhiệm kiểm tra thứ tự nhận dạng của các gói để lấy cơ sở sắp xếp chúng đúng với thứ tự đã được gán khi gửi
Tầng 2 - Data Link Layer (Tầng liên kết)
Tầng liên kết dữ liệu thực hiện việc thiết lập, duy trì, hủy bỏ các liên kết
dữ liệu, đồng thời kiểm soát lỗi và lưu lượng
Trang 5Tại tầng này, các gói dữ liệu sẽ được mã hóa và giải mã thành các bit Data link cung cấp kiến thức về giao thức truyền tải, quản lý, xử lý các lỗi trong tầng physical, điều khiển luồng và đồng bộ hóa frame Tầng Data link này được chia thành 2 tầng con: tầng Media Access Control (MAC) và Logical Link Control (LLC) Tầng MAC sẽ kiểm soát việc truy cập và truyền tải dữ liệu của máy tính trên mạng Tầng LLC kiểm soát đồng bộ hóa frame, kiểm soát luồng và kiểm tra lỗi
Tầng 1 - Physical Layer (Tầng vật lý)
Đây là tầng dưới cùng trong mô hình OSI, chịu trách nhiệm xác định các chức năng, thủ tục về điện, cơ, quang để kích hoạt, duy trì và giải phóng kết nối vật lý giữa các hệ thống mạng Tầng Physical cung cấp các tài nguyên phần cứng để gửi và nhận dữ liệu trên một carrier, bao gồm xác định cáp, card và các thành phần vật lý
Ngoài ra, tầng này còn đảm bảo các yêu cầu về chuyển mạch hoạt động nhằm tạo ra đường truyền thực cho các chuỗi bit thông tin Các chuẩn trong tầng vật lý là các chuẩn xác định giao diện người dùng và môi trường mạng Fast Ethernet, RS232 và ATM là các giao thức với thành phần trong tầng Physical
2 Giao thức TCP
Khái niệm giao thức TCP
Transmission Control Protocol (TCP) là giao thức tiêu chuẩn trên Internet đảm bảo trao đổi thành công các gói dữ liệu giữa các thiết bị qua mạng TCP là giao thức truyền tải cơ bản cho nhiều loại ứng dụng, bao gồm máy chủ web vàtrangweb, ứng dụng email, FTP vàcác ứng dụng ngang hàng
TCP hoạt động với giao thức Internet (IP) để chỉ định cách dữ liệu được trao đổi trực tuyến IP chịu trách nhiệm gửi từng gói đến đích của nó, trong khi TCP đảm bảo rằng các byte được truyền theo thứ tự mà chúng được gửi mà không có lỗi hoặc thiếu sót nào Hai giao thức kết hợp với nhau được gọi là TCP/IP
Cách truyền dữ liệu
Trang 6Khi đã hình thành liên kết TCP, hai tiến trình tham gia liên kết có thể truyền dữ liệu cho nhau Khi một tiến trình chuyển một chuỗi byte qua socket tới tầng giao vận, dữ liệu đó sẽ hoàn toàn do TCP trên máy đó quản lý và chịu trách nhiệm
TCP có thể coi như một hệ thống con của hệ điều hành chịu trách nhiệm nhận dữ liệu từ ứng dụng cục bộ cũng như nhận dữ liệu từ máy ở xa
o Tcp buffer
TCP không lập tức đóng gói dữ liệu và chuyển lên mạng Thay vào đó, Tcp chuyển
dữ liệu tới một bộ nhớ đệm (buffer) được hình thành trong quá trình bắt tay ba bước Theo thời gian, TCP sẽ lấy dữ liệu (dữ liệu của ứng dụng) từ bộ nhớ đệm, đóng gói thành segment, và chuyển lên đường truyền
Trong khoảng thời gian chờ ở bộ nhớ đệm, ứng dụng có thể gửi thêm dữ liệu và dữ liệu này sẽ tiếp tục được bổ sung vào bộ nhớ đệm Tương tự, TCP trên máy đích cũng sử dụng một bộ nhớ đệm cục bộ của riêng mình để lưu dữ liệu nhận được cho đến khi nó nhận được đầy đủ tất cả các gói tin theo đúng thứ tự Sau đó, dữ liệu này mới được chuyển lên cho ứng dụng
o Tcp segment
Đơn vị dữ liệu của Tcp được gọi là segment Kích thước tối đa của segment (maximum segment size, MSS) được thiết lập tự động bằng cách xác định kích thước tối đa của frame dữ liệu của tầng liên kết Việc thiết lập MSS như vậy đảm bảo cho TCP segment có thể nằm vừa khít trong một frame với kích thước đủ lớn để
có hiệu suất gửi dữ liệu cao nhất
Khi TCP gửi đi dữ liệu kích thước lớn (ví dụ, một file ảnh lớn trong một trang web),
dữ liệu này sẽ được cắt thành từng phần có kích thước bằng MSS (trừ mảnh cuối cùng có thể có kích thước nhỏ hơn)
Ngược lại, các ứng dụng tương tác thường dùng các khối dữ liệu có kích thước nhỏ hơn MSS Ví dụ, chương trình Telnet thường gửi đi dữ liệu có kích thước đúng 1 byte, do đó kích thước TCP segment dùng với Telnet thường chỉ có 21 byte
o Acknowledgement
Mỗi khi Tcp trên máy nguồn gửi đi một segment, nó sẽ chờ nhận được một gói tin phản hồi (ACK) từ máy đối tác thông báo về tình trạng của segment vừa nhận Chỉ khi có ACK xác nhận đạt yêu cầu, Tcp trên máy nguồn mới tiếp tục gửi đi segment tiếp theo
Trang 7Do những đặc điểm trên, khi tiến trình gửi dữ liệu đi (dưới dạng các thông điệp thuộc tầng ứng dụng), TCP đảm bảo việc chuyển được toàn bộ dữ liệu tới máy đích theo đúng thứ tự, không mất mát và không lỗi
3 Giao thức UDP
Khái niệm giao thức UDP
UDP (User Datagram Protocol) là một trong hai giao thức của tầng giao vận trong
bộ giao thức TCP/IP Giao thức UDP được thiết kế bởi David P Reed và hiện nay được định nghĩa trong RFC 768 UDP được thực thi ở dạng phần mềm và cài đặt ở dạng thư viện hệ thống của hầu hết các hệ điều hành hiện nay Vì vậy hoàn toàn có thể gọi UDP là “hàm” hay “chương trình” khi nhìn từ khía cạnh lập trình mạng UDP cung cấp dịch vụ vận chuyển dữ liệu đầu cuối – đầu cuối cho chương trình ứng dụng thông qua socket Udp
Truyền dư kiệu với giao thức UDP
Truyền tải dữ liệu qua UDP không tạo liên kết ảo giữa các tiến trình tham gia truyền thông Do không tạo ra liên kết ảo trước khi truyền dữ liệu, giao thức UDP có thể truyền dữ liệu đi ngay lập tức mà không cần thực hiện quá trình xây dựng liên kết phức tạp Vì lý do này mà chỉ khi nào nhận được dữ liệu (ReceiveFrom), tiến trình mới biết được nó đang trao đổi dữ liệu với tiến trình nào (thông qua tham số thứ hai kiểu EndPoint) Cũng vì lý do này, UDP được gọi là giao thức phi liên kết, socket UDP còn được gọi là socket phi liên kết (connectionless socket)
Giao thức UDP đơn giản và cho phép truyền dữ liệu theo thời gian thực Tuy nhiên,
do thiếu các cơ chế kiểm soát dữ liệu trong quá trình truyền, giao thức UDP chỉ thích hợp khi truyền các loại dữ liệu không có yêu cầu cao về kiểm tra và sửa lỗi Vì vậy UDP được sử dụng phổ biến nhất trong việc truyền tải dữ liệu đa phương tiện (video, audio, image), trong đó, việc mất một số datagram không ảnh hưởng đến việc sử dụng dữ liệu, đồng thời cần tốc độ truyền tải cao
Truyền tải dữ liệu qua Udp không sử dụng các bộ nhớ đệm, do đó chương trình đích bắt buộc phải nhận gói tin Udp kịp thời Nếu không phát lệnh nhận (ReceiveFrom) kịp thời, gói tin Udp sẽ mất đi Như trong phần thực hành trên chúng ta để cho Server luôn luôn chờ nhận gói tin trong một vòng lặp vô tận
Giao thức và dịch vụ tầng ứng dụng phổ biến sử dụng UDP bao gồm
Domain Name System (DNS), Network Time Protocol (NTP), IP tunneling, Remote Procedure Call (RPC), Network File System (NFS), DHCP, TFTP (Trivial FTP), IPTV (Streaming media).
Trang 8Câu 2:cho mô hình mạng:
Biết công ty dung địa chỉ IP: 200.150.70.0/24
- Chia địa chỉ IP trên thành các mạng con phù hợp
- Dùng phần mềm Cisco Packet Tracer thiết kế mô hình mạng trên các yêu cầu sau :
o Sử dụng Router 2911, Switch 2960, đặt hostname cho các Router như sơ đồ, đặt password, secret enable cho các Router,
o Gắn các địa chỉ IP đã chia cho các cổng, cấu hình ip route sao cho các mạng đều kiên kết được với nhau
Chia mạng:
Chọn mạng lớn nhất có số host là 30+1=31 host
→ Ta chọn m = 5 vì = 32 >31
Bước nhảy: = 32
Số host trong 1 mạng: - 2 = 32 - 2 = 30
n = 3
Prefix: 24 + 3 = 27
Mạng con thứ nhất:
o Địa chỉ mạng: 200.150.70.0/27
o Địa chỉ đầu: 200.150.70.1/27
Trang 9o Địa chỉ cuối: 200.150.70.30/27
o Địa chỉ quảng bá: 200.150.70.31/27
- Chọn mạng lớn thứ hai có số host là 25+1=26 host
→ Ta chọn m = 5 vì = 32 > 26
Bước nhảy: = 32
Số host trong 1 mạng: - 2 = 32 - 2 = 30
n = 3
Prefix: 24 + 3 = 27
Mạng con thứ hai:
o Địa chỉ mạng: 200.150.70.32/27
o Địa chỉ đầu: 200.150.70.33/27
o Địa chỉ cuối: 200.150.70.62/27
o Địa chỉ quảng bá: 200.150.70.63/27
- Chọn mạng lớn thứ ba có số host là 12+1=13 host
→ Ta chọn m = 4 vì = 16 > 13
Bước nhảy: = 16
Số host trong 1 mạng: - 2 = 16 - 2 = 14
n = 4
Prefix: 24 + 4 = 28
Mạng con thứ ba:
o Địa chỉ mạng: 200.150.70.64/28
o Địa chỉ đầu: 200.150.70.65/28
o Địa chỉ cuối: 200.150.70.78/28
o Địa chỉ quảng bá: 200.150.70.79/28
Trang 10- Chọn mạng lớn thứ tư và năm có số host là 2 host
→ Ta chọn m = 2 vì = 4 > 2
Bước nhảy: = 4
Số host trong 1 mạng: - 2 = 4 - 2 = 2
n = 6
Prefix: 24 + 6 = 30
Mạng con thứ sáu:
o Địa chỉ mạng: 200.150.70.80/30
o Địa chỉ đầu: 200.150.70.81/30
o Địa chỉ cuối: 200.150.70.82/30
o Địa chỉ quảng bá: 200.150.70.83/30
Mạng con thứ bảy:
o Địa chỉ mạng: 200.150.70.84/30
o Địa chỉ đầu: 200.150.70.85/30
o Địa chỉ cuối: 200.150.70.86/30
o Địa chỉ quảng bá: 200.150.70.87/30
Cấu hình các Router:
Marketing:
hostname marketing
!
!
!
enable secret 5 $1$mERr$3iB3Gy1Mp/cENK/iWN/ve0 enable password 1234
Trang 11!
!
!
!
!
no ip cef
no ipv6 cef
!
!
!
!
license udi pid CISCO2911/K9 sn
FTX1524P190-!
!
!
!
!
!
!
!
!
!
!
spanning-tree mode pvst
!
!
!
!
!
!
interface GigabitEthernet0/0
ip address 200.150.70.33 255.255.255.224 duplex auto
speed auto
!
interface GigabitEthernet0/1
Trang 12no ip address
duplex auto
speed auto
shutdown
!
interface GigabitEthernet0/2
no ip address
duplex auto
speed auto
shutdown
!
interface Serial0/3/0
ip address 200.150.70.82 255.255.255.252
clock rate 64000
!
interface Serial0/3/1
no ip address
clock rate 2000000
shutdown
!
interface Vlan1
no ip address
shutdown
!
ip classless
ip route 200.150.70.84 255.255.255.252 200.150.70.81
ip route 200.150.70.64 255.255.255.240 200.150.70.81
ip route 200.150.70.0 255.255.255.224 200.150.70.81
!
ip flow-export version 9
!
!
!
!
!
!
!
Trang 13line con 0
!
line aux 0
!
line vty 0 4
login
!
!
!
end
Records:
hostname records
!
!
!
enable secret 5 $1$mERr$3iB3Gy1Mp/cENK/iWN/ve0 enable password 1234
!
!
!
!
!
!
no ip cef
no ipv6 cef
!
!
!
!
license udi pid CISCO2911/K9 sn
FTX1524TF7Z-!
!
!
!
!
!
Trang 14!
!
!
!
spanning-tree mode pvst
!
!
!
!
!
!
interface GigabitEthernet0/0
ip address 200.150.70.65 255.255.255.240 duplex auto
speed auto
!
interface GigabitEthernet0/1
no ip address
duplex auto
speed auto
shutdown
!
interface GigabitEthernet0/2
no ip address
duplex auto
speed auto
shutdown
!
interface Serial0/3/0
ip address 200.150.70.81 255.255.255.252
!
interface Serial0/3/1
ip address 200.150.70.86 255.255.255.252 clock rate 64000
!
interface Vlan1
Trang 15no ip address
shutdown
!
ip classless
ip route 200.150.70.32 255.255.255.224 200.150.70.82
ip route 200.150.70.0 255.255.255.224 200.150.70.85
!
ip flow-export version 9
!
!
!
!
!
!
!
line con 0
!
line aux 0
!
line vty 0 4
login
!
!
!
end
Research:
hostname research
!
!
!
enable secret 5 $1$mERr$3iB3Gy1Mp/cENK/iWN/ve0 enable password 1234
!
!
!
!
!
Trang 16no ip cef
no ipv6 cef
!
!
!
!
license udi pid CISCO2911/K9 sn
FTX15242JC1-!
!
!
!
!
!
!
!
!
!
!
spanning-tree mode pvst
!
!
!
!
!
!
interface GigabitEthernet0/0
ip address 200.150.70.1 255.255.255.224 duplex auto
speed auto
!
interface GigabitEthernet0/1
no ip address
duplex auto
speed auto
shutdown
!