4 lớp này sẽ được trồng lên nhau theo thứ tự lần lượt là:- Tầng vật lý- Tầng mạng- Tầng giao vận- Tầng ứng dụng... Cụ thể, tầng ứng dụng sẽ giao tiếp dữ liệu giữa 2 máy khác nhau.. Việc
Trang 1NHÓM 12:
THÀNH VIÊN: Phan Nguyên
Nguyễn Tiến Phúc
Phạm Ngọc Nghĩa
Ngô Hùng Phương
Đỗ Trọng Phú
Phạm Hoàng Nam
1.Tổng quan về TCP/IP
1.1 TCP/IP là gì?
Vậy TCP/IP hay TCP TP là gì? TCP/IP là viết tắt của Transmission Control Protocol/ Internet Protocol, tức là giao thức điều khiển để truyền nhận liên mạng Đây là một bộ giao thức có chức năng truyền và kết nối các thông tin giữa các thiết
bị trong một mạng lưới internet
1.2 TCP/IP hoạt động như thế nào?
Đúng như tên gọi, sau khi tìm hiểu TCP/IP là gì, chúng ta phần nào đã có thể xác định được, TCP/IP gồm có 2 giao thức chính, đó là:
Trang 2- TCP: Có chức năng xác định các ứng dụng và tạo ra các kênh giao tiếp TCP
cũng có chức năng quản lý các thông tin khi được chia nhỏ để truyền tải qua internet Giao thức này sẽ tập hợp các thông tin này theo đúng thứ tự, đảm bảo truyền tải thông tin chính xác tới địa chỉ đến
- IP: Đảm bảo thông tin được truyền đến đúng địa chỉ IP sẽ gán các địa chỉ và
định tuyến từng gọi thông tin Mỗi mạng sẽ có 1 địa chỉ IP để xác định được chính xác nơi chuyển/nhận thông tin, dữ liệu
1.3 Chức năng của từng tầng trong mô hình TCP/IP
Mô hình TCP/IP hiện nay gồm có 4 lớp Đây là mô hình tiêu chuẩn 4 lớp này sẽ được trồng lên nhau theo thứ tự lần lượt là:
- Tầng vật lý
- Tầng mạng
- Tầng giao vận
- Tầng ứng dụng
Trang 31.3.1 Tầng ứng dụng - Application
Tầng ứng dụng hay còn được gọi là Application Đây là tầng trên cùng, có chức năng giao tiếp của mô hình Cụ thể, tầng ứng dụng sẽ giao tiếp dữ liệu giữa 2 máy khác nhau Việc giao tiếp có thể thông qua trình duyệt web, email hay một số giao thức khác như SMTP, SSH, FTP…
Tầng ứng dụng giao thức dữ liệu bằng hình thức Byte by Byte Các thông tin sẽ được định tuyến với nhau, giúp gói tin đi theo một hướng đi đúng và thông tin được truyền tải thành công
1.3.2 Tầng giao vận - Transport
Tầng giao vận là tầng thứ 3, có chức năng xử lý các vấn đề trong quá trình giao tiếp của các máy chủ Các máy chủ này có thể trong cùng một mạng hoặc khác mạng Trong trường hợp khác mạng, các máy chủ sẽ được kết nối thông qua một
bộ định tuyến
Dữ liệu ở tầng giao vận sẽ được phân thành các đoạn có kích thước không bằng nhau Tuy nhiên, kích thước của các đoạn cần nhỏ hơn 64KB Một đoạn sẽ gồm Header chứa thông tin, sau header là các đoạn dữ liệu
Tầng Transport gồm 2 giao thức:
Trang 4Giao thức TCP: giúp đảm bảo chất lượng thông tin trong quá trình truyền
nhận Tuy nhiên, việc truyền nhận thông tin thường mất nhiều thời gian do việc kiểm tra thứ tự thông tin khá lâu Đồng thời, giao thức TCP cũng giúp hạn chế tình trạng tắc nghẽn đối với lưu lượng dữ liệu
Giao thức UDP: Có thời gian truyền tải dữ liệu nhanh hơn Tuy nhiên, giao
thức UDP sẽ không thể đảm bảo chất lượng dữ liệu như đối với giao thức TCP
1.3.3 Tầng mạng - Internet
Khi tìm hiểu TCP/IP là gì, chắc chắc không thể bỏ qua việc tìm hiểu tầng 2 - tầng
mạng internet của giao thức này Tầng internet của TCP/IP có giao thức gần giống như mô hình OSI Tầng 2 có chức năng chính trong việc truyền tải dữ liệu, đảm bảo các dữ liệu được truyền tải một cách logic
Các dữ liệu sẽ được chia thành các phân đoạn sau đó được đóng gói Mỗi gói sẽ có các kích thước phù hợp để việc vận chuyển dễ dàng hơn Đồng thời, các gói thông tin khi truyền tải sẽ được thêm phần Header Header này sẽ chứa các thông tin của tầng mạng để có thể xác định và chuyển tới tầng tiếp theo Tầng internet thường sử dụng 3 giao thức chính, đó là: IP, ICMP và tầng ARP
Trang 51.3.4 Tầng 1: Tầng vật lý - Physical
Đúng như tên gọi, tầng vật lý của giao thức TCP/IP có sự kết hợp giữa vật lý và dữ liệu mô hình OSI Đây là tầng có trách nhiệm truyền tải các dữ liệu giữa các thiết
bị khác nhau trong cùng 1 mạng internet Khác với các tầng trên, tại tầng vật lý, các dữ liệu sẽ được đóng gói vào khung (Frame) trước khi được định tuyến và gửi tới địa chỉ đích đã được chỉ định
1.4 Ưu nhược điểm của mô hình TCP/IP
1.4.1 Ưu điểm
TCP/IP là giao thức có tính thực tế và tính ứng dụng cao Đây là giao thức có rất nhiều ưu điểm nổi bật Chẳng hạn như:
Có khả năng tạo lập kết nối giữa các máy tính khác nhau
TCP/IP hoạt động độc lập với hệ điều hành Do đó ít bị ảnh hưởng khi lỗi win
TCP/IP hỗ trợ tương tác với nhiều giao thức trực tuyến khác nhau
Có khả năng mở rộng cao nhờ việc kết nối giữa máy client và máy server Giao thức có thể hoạt động hoàn toàn độc lập
Hỗ trợ nhiều giao thức khác nhau
Không ảnh hưởng tới internet hay gây áp lực trên máy tính nhờ có dung lượng nhẹ
Trang 61.4.2 Nhược điểm
Trong quá trình tìm hiểu TCP/IP là gì, chúng ta cũng không thể bỏ qua các nhược
điểm của giao thức này Tất nhiên, không có một chương trình nào là hoàn hảo 100% TCP/IP cũng còn một số nhược điểm như:
Khó quản lý, cài đặt khá cầu kỳ, phức tạp
Tầng giao vận đôi khi không đảm bảo được việc phân phối các gói tin, dữ liệu
TCP/IP gồm các giao thức cố định, rất khó để thay thế
Bên cạnh đó, TCP/IP cũng không có sự tách biệt giữa khái niệm với giao diện Với những trang web mới trong mạng mới, TCP/IP là giao thức chưa thực sự hiệu quả
TCP/IP dễ bị tấn công và từ chối dịch vụ
2 Tìm hiểu tổng quan về lập trình với ngôn ngữ C#.
C# (hay C sharp) là một ngôn ngữ lập trình đơn giản, được phát triển bởi đội ngũ
kỹ sư của Microsoft vào năm 2000 C# là ngôn ngữ lập trình hiện đại, hướng đối tượng và được xây dựng trên nền tảng của hai ngôn ngữ mạnh nhất là C++ và Java
Trong các ứng dụng Windows truyền thống, mã nguồn chương trình được biên dịch trực tiếp thành mã thực thi của hệ điều hành
Trang 7Trong các ứng dụng sử dụng NET Framework, mã nguồn chương trình (C#, VB.NET) được biên dịch thành mã ngôn ngữ trung gian MSIL (Microsoft intermediate language)
Sau đó mã này được biên dịch bởi Common Language Runtime (CLR) để trở thành mã thực thi của hệ điều hành Hình bên dưới thể hiện quá trình chuyển đổi MSIL code thành native code
2.1 C# là ngôn ngữ đơn giản
C# loại bỏ một vài sự phức tạp và rối rắm của những ngôn ngữ như Java và c++, bao gồm việc loại bỏ những macro, những template, đa kế thừa, và lớp
cơ sở ảo (virtual base class)
Ngôn ngữ C# đơn giản vì nó dựa trên nền tảng C và C++ Nếu chúng ta thân thiện với C và C++ hoặc thậm chí là Java, chúng ta sẽ thấy C# khá giống về diện mạo, cú pháp, biểu thức, toán tử và những chức năng khác được lấy trực tiếp từ ngôn ngữ C và C++, nhưng nó đã được cải tiến để làm cho ngôn ngữ đơn giản hơn
Trang 82.2 C# là ngôn ngữ hiện đại
Điều gì làm cho một ngôn ngữ hiện đại? Những đặc tính như là xử lý ngoại lệ, thu gom bộ nhớ tự động, những kiểu dữ liệu mở rộng, và bảo mật mã nguồn là những đặc tính được mong đợi trong một ngôn ngữ hiện đại C# chứa tất cả những đặc tính trên Nếu là người mới học lập trình có thể chúng ta sẽ cảm thấy những đặc tính trên phức tạp và khó hiểu Tuy nhiên, cũng đừng lo lắng chúng ta sẽ dần dần được tìm hiểu những đặc tính qua các nội dung khoá học này
2.3 C# là một ngôn ngữ lập trình thuần hướng đối tượng
Lập trình hướng đối tượng (OOP: Object-oriented programming) là một phương pháp lập trình có 4 tính chất Đó là tính trừu tượng (abstraction), tính đóng gói (encapsulation), tính đa hình (polymorphism) và tính kế thừa (inheritance) C# hỗ trợ cho chúng ta tất cả những đặc tính trên
2.4 C# là một ngôn ngữ ít từ khóa
C# là ngôn ngữ sử dụng giới hạn những từ khóa Phần lớn các từ khóa được sử dụng để mô tả thông tin Chúng ta có thể nghĩ rằng một ngôn ngữ có nhiều từ khóa thì sẽ mạnh hơn Điều này không phải sự thật, ít nhất là trong trường hợp ngôn ngữ C#, chúng ta có thể tìm thấy rằng ngôn ngữ này có thể được sử dụng để làm bất cứ nhiệm vụ nào
Trang 93 Bài tập đầu tiên
Code:
Result:
Trang 104 Các bước cài đặt môi trường C# ( Trên Visual Studio 2022 )
B1: Tải Visual Studio 2022 ( https://visualstudio.microsoft.com/ )
B2: Chạy tệp vừa tải về
B3 : Nhấp vào “Continue”
Trang 11B4 : Chọn những thứ cần cho môi trường C#.
B5 : Ấn Install