PHẦN 1 : BỘ GIAO THỨC TCP/IP
I Giới Thiệu về bộ giao thức TCP/IP:
+ Để các máy máy tính có thể liên lạc với nhau qua mạng, chúng phải sử dụng cùng 1 giao thức (Protocol). Giao thức là 1 hệ luật và chuẩn cho phép các máy tính trong mạng liên lạc với nhau.
+ TCP/IP là viết tắt của Transmission Control Protocol (Giao thức Điều Khiển Truyền Thông) / Internet Protocol (Giao thức Internet).
+ TCP/IP không chỉ gồm 2 giao thức mà thực tế nó là tập hợp của nhiều giao thức. Chúng ta gọi đó là 1 Hệ Giao Thức hay Bộ Giao Thức (Suite Of Protocols).
II :Giới thiệu mô hình DoD
+ Để cho các máy tính trao đổi dữ liệu với nhau TCP/IP sử dụng mô hình truyền thông 4 tầng hay còn gọi là Mô Hình DoD (Mô hình của Bộ Quốc Phòng Mỹ). Các tầng trong mô hình này là (Theo thứ tự từ trên xuống):
- Tầng Ứng Dụng (Application Layer)
- Tầng Giao Vận (Transport Layer)
- Tầng Liên Mạng (Internet Layer)
- Tầng Giao Diện Mạng (Network Interface Layer)
+ Mỗi giao thức của Họ TCP/IP đều thuộc 1 trong các tầng này.
Đặc tính tổng quát của từng tầng:
1.Tầng Giao Diện Mạng (Network Interface Layer):
+ Tầng Giao Diện Mạng có trách nhiệm đưa dữ liệu tới và nhận dữ liệu từ phương tiện truyền dẫn. Tầng này gồm các thiết bị phần cứng vật lí chẳng hạn như Card Mạng và Cáp Mạng.
+ 1 Card Mạng chẳng hạn card Ethernet chứa 1 số HEX 12 kí tự (00-18-37-03-C0-F4) được gọi là Địa Chỉ MAC (Media Access Control) hay Địa Chỉ Truy Nhập Phương Tiện . MAC đóng vai trò quan trọng trong việc gán địa chỉ và truyền dữ liệu.
+ 1 số giao thức tiêu biểu thuộc tầng này gồm :
- ATM (Asynchronous Transfer Mode)
- Ethernet
- Token Ring
- FDDI (Fiber Distributed Data Interface)
- Frame Relay
2.Tầng Liên Mạng (Internet Layer):
+ Nằm bên trên tầng giao diện mạng. Tầng này có chức năng gán địa chỉ, đóng gói và định tuyến (Route) dữ liệu.
+ Có 4 giao thức quan trọng nhất trong tầng này gồm:
- IP (Internet Protocol): Có chức năng gán địa chỉ cho dữ liệu trước khi truyền và định tuyến chúng tới đích.
- ARP (Address Resolution Protocol): Có chức năng biên dịch địa chỉ IP của máy đích thành địa chỉ MAC.
- ICMP (Internet Control Message Protocol): Có chức năng thông báo lỗi trong trường hợp truyền dữ liệu bị hỏng.
- IGMP (Internet Group Management Protocol): Có chức năng điều khiển truyền đa hướng (Multicast)
3.Tầng Giao Vận (Transport Layer):
Có trách nhiệm thiết lập phiên truyền thông giữa các máy tính và quy định
cách truyền dữ liệu. 2 giao thức chính trong tầng này gồm:
+ UDP (User Datagram Protocol): Còn gọi là Giao Thức Gói Người Dùng. UDP cung cấp các kênh truyền thông phi kết nối nên nó không đảm bảo truyền dữ liệu 1 cách tin cậy. Các ứng dụng dùng UDP thường chỉ truyền những gói có kích thước nhỏ, độ tin cậy dữ liệu phụ thuộc vào từng ứng dụng.
+ TCP (Transmission Control Protocol): Ngược lại với UDP, TCP cung cấp các kênh truyền thông hướng kết nối và đảm bảo truyền dữ liệu 1 cách tin cậy. TCP thường truyền các gói tin có kích thước lớn và yêu cầu phía nhận xác nhận về các gói tin đã nhận.
4.Tầng Ứng Dụng (Application Layer):
+ Gồm nhiều giao thức cung cấp cho các ứng dụng người dùng. Được sử dụng để định dạng và trao đổi thông tin người dùng.
+ 1 số giao thức thông dụng trong tầng này là:
- DHCP (Dynamic Host Configuration Protocol): Giao Thức Cấu Hình cấp địa chỉ IP động cho Client
- DNS (Domain Name System): Hệ Thống Tên Miền
- SNMP (Simple Network Management Protocol): Giao Thức Quản Lý Mạng Đơn Giản
- FTP (File Transfer Protocol): Giao Thức Truyền Tập Tin
- TFTP (Trivial File Transfer Protocol): Giao Thức Truyền Tập Tin Bình Thường
- SMTP (Simple Mail Transfer Protocol): Giao Thức Truyền Thư Đơn Giản
- TELNET.
Minh họa mô hình DoD
PHẦN 2 : ĐỊA CHỈ IP
I Giới thiệu địa chỉ IP:
+ Trên mạng TCP/IP hay còn gọi là trạm TCP/IP mỗi máy tính được xác định bằng 1 địa chỉ IP logic.
+ Địa chỉ IP của mỗi thiết bị mạng IP phải là duy nhất.
+ Địa chỉ IP cho biết vị trí của 1 hệ thống trong 1 mạng. Địa chỉ IP phải là duy nhất trên toàn cầu
và phải được viết dưới 1 định dạng chuẩn.
+ Mỗi địa chỉ IP được chia thành 2 phần : Phần địa chỉ mạng (Net ID) và Phần địa chỉ trạm (Host
ID).
- Net ID: Dùng để nhận dạng những hệ thống trong cùng 1 khu vực vật lý còn được gọi là Phân Đoạn (Segment). Mọi hệ thống trong cùng 1 Phân Đoạn phải có cùng Địa Chỉ Mạng và Phần địa chỉ này phải là duy nhất trong số các mạng hiện có.
- Host ID: Dùng để nhận dạng 1 trạm làm việc, 1 máy chủ, 1 Router hoặc 1 trạm TCP/IP trong 1 phân đoạn. Phần địa chỉ trạm cũng phải là duy nhất trong 1 mạng
- Sự kết hợp giữa NETID và HOSTID phải cho phép nhận dạng duy nhất mỗi máy tính trên mạng.
Đặc tính kỹ thuật của địa chỉ IP
+ Các địa chỉ IP có chiều dài 32bit được chia thành 4 phần . Mỗi dãy gồm 8bit (1Byte), mỗi Byte được phân cách bởi dấu “.”
+ 1 Byte là 1 octet và có giá trị nằm trong khoảng từ 0-255. Cách biểu diễn như vậy gọi là “Kí hiệu thập phân chấm” (Dotted-Decimal Notation) giúp người sử dụng nhớ địa chỉ 1 cách dễ dàng.
+ Tuy nhiên khi xử lý thông tin máy tính lại sử dụng Hệ Nhị Phân (Binary) vì tín hiệu chúng sử dụng để truyền thông chỉ có 2 trạng thái là Bật (1) và Tắt (0).
+ Bảng quy đổi giá trị thập phân từng bit trong mỗi octet.
II. Lớp địa chỉ IP:
Địa chỉ IP được chia thành 5 lớp để tạo các mạng có kích thước khác nhau ký hiệu là: Lớp A, Lớp B, Lớp C, Lớp D, Lớp E.
Chỉ có địa chỉ lớp A, lớp B, lớp C được gán cho các trạm. Các lớp này có chiều dài phần NET ID và HOST ID khác nhau nên số lượng Mạng và số lượng trạm trên mỗi mạng cũng khác nhau:
Theo quy ước chiều dài NetID của các lớp như sau:
Lớp A: có NetID là 8 bits. Định dạng là: NetID.HostID.HostID.HostID
Lớp B: có NetID là 16 bits. Định dạng là: NetID.NetID.HostID.HostID
Lớp C có NetID là 24 bits. Định dạng là: NetID.NetID.NetID.HostID
Cách xác định lớp địa chỉ IP:
Để xác định lớp địa chỉ IP ta căn cứ vào bảng bits quan trọng Bit quan trọng là các bits đầu tiên của octet đầu tiên của địa chỉ IP
Như vậy để biết địa chỉ IP thuộc lớp nào ta phải đổi số thập phân của octet đầu tiên của địa chỉ IP ra số nhị phân. Sau đó so các bits nhị phân này với các bits nhị phân trong bảng bits quan trọng để biết được địa chỉ IP thuộc lớp nào.
Xét ví dụ: xác định địa chỉ IP sau thuộc lớp nào: 131.10.0.1
Đổi số thập phân 131 của octet đầu tiên ra số nhị phân:
131 - 27=3
3 - 21=1
1 - 20=0
131 - 100000112
Như vậy số 131 sau khi đổi sang số nhi phân có 2 bits đầu tiên là 10 so với bảng bits quan trọng địa chỉ IP này thuộc lớp B
Xác định số mạng trong mỗi lớp và số host trong mỗi mạng
Lớp A: có bits xác định lớp là 0
Do vậy số NetID được xác định như sau:
Min : 00000000 – 0
Max: 01111111 - 127
Có 2 địa chỉ mạng không cấp đó là: địa chỉ 0 không có giá trị và địa chỉ 127.0.0.1 dùng để thử Loopback
Do vậy phạm vi NetID của mạng lớp A trong khoảng :từ 1 đến 126
Số mạng lớp A được xác định bằng công thức: 28-1-2 = 126 - Do sử dụng 1 bit để xác định lớp nên số bits còn lại là 8-1.
Số host trong mỗi mạng lớp A được xác định bằng công thức : 224-2=16777216-2=16777214. trong công thức phải trừ 2 do các địa chỉ host có các bits bằng 0 và bằng 1 không cấp.
- Các bits của Host ID toàn là 0 được dùng xác định địa chỉ mạng
- Các bits của Host ID toàn là 1 được dùng làm địa chỉ Broadcasting
Phạm vi địa chỉ mạng lớp A là : Từ 1.0.0.1 đến 126.255.255.254
Lớp B: có bits xác định lớp là 10
Do vậy :giá trị thập phân của octet đầu tiên nằm trong khoảng
Min: 100000002 – 12810
Max: 101111112 – 19110
Phạm vi NetID của mạng lớp B trong khoảng: 128.0 đến 191.255
Số mạng lớp B được xác định bơỉ: 216-2=214=16384
Số hosts lớp B được xác định bởi : 216-2=65534
Phạm vi địa chỉ mạng lớp B trong khoảng: 128.0.0.1 đến 191.255.255.254
Lớp C: có bits xác định lớp là 110
Do vậy giá trị thập phân của octet đầu tiên trong khoảng
- Min: 110000002 - 19210
- Max: 110111112 - 22310
Phạm vi địa chỉ mạng lớp C là : 192.0.0 đến 223.255.255
Số mạng lớp C được xác định bởi : 224-3=221 = 2097152
Số host lớp C được xác định bởi : 28 – 2 = 254
Phạm vi địa chỉ lớp C là : 192.0.0.1 đến 223.255.255.254
- Lớp D: Các địa chỉ lớp này sử dụng cho Truyền Đa Hướng (Multicast). 1 nhóm Multicast có thể chứa 1 hoặc nhiều Trạm. Trong lớp này 4 Bit cao nhất của Byte đầu tiên luôn được đặt là 1 1 1 0, các Bit còn lại định nghĩa nhóm Multicast. Địa chỉ lớp D không được chia thành Net ID và Host ID. Các gói(Packets) Multicast được truyền tới 1 nhóm Trạm cụ thể và chỉ có các Trạm đăng kí vào nhóm này mới nhận được gói
- Lớp E: Là lớp địa chỉ thực nghiệm, nó không được thiết kế cho mục đích sử dụng chung. Lớp E được dự phòng cho các ứng dụng tương lai. Các Bit cao nhất của Byte đầu tiên luôn được đặt là 1 1 1 1
- Tổng số IP có thể sử dụng là : 3.720.314.628
III. Địa chỉ IP Public và Địa chỉ IP Private:
1. IP Public:
- Mỗi 1 địa chỉ IP ngoài Internet là duy nhất. Để các Network có những địa chỉ duy nhất ngoài Internet, thì Internet Assigned Numbers Authority (IANA) sẽ chia những khoảng địa chỉ không dự trữ thành những phần nhỏ và ủy thác trách nhiệm phân phối địa chỉ cho các tổ chức Đăng Kí Miền khắp thế giới. Những tổ chức đó là Asia-Pacific Network Information Center (APNIC), American Registry for Internet Numbers (ARIN), and Réseaux IP Européens (RIPE NCC). Những tổ chức này sẽ phân phối những khối địa chỉ đến 1 số nhà các Internet Service Provider (ISP) lớn và các ISP lớn này sau đó sẽ gán những khối nhỏ hơn cho các đại lý và các ISP nhỏ hơn.
- ISP sẽ cấp 1 IP Public cho mỗi máy tính của bạn để các máy tính này có thể kết nối trực tiếp đến ISP. Các địa chỉ này được cấp 1 cách tự động đến mỗi máy tính khi máy tính kết nối và có thể là địa chỉ tĩnh nếu đường line của bạn thuê riêng hay các tài khoàn Dial-up.
2. IP Private:
- IANA đã dự trữ một ít địa chỉ IP mà các địa chỉ này không bao giờ được sử dụng trên Internet. Những địa chỉ IP Private này được sử dụng cho những Host yêu cầu có IP để kết nối nhưng không cần được thấy trên các mạng Public. Ví dụ, 1 user kết nối những máy tính trong mạng TCP/IP ở nhà thì ko cần cấp 1 địa chỉ IP Public cho mỗi Host. User có thể lấy những khoảng IP ở bảng dưới đây để cung cấp địa chỉ cho các Host trong mạng.
- Những host có địa chỉ IP Private có thể kết nối đến Internet bằng cách sử dụng 1 Proxy Server hay 1 máy tính chạy Windows Server 2003 đã cấu hình như là 1 Network Address Translation (NAT) Server. Windows Server 2003 cũng tích hợp chức năng Internet Connection Sharing (ICS) để cung cấp dịch vụ NAT đơn giản cho các Client trong mạng Private.
Các địa chỉ IP dùng riêng của các lớp như sau:
- Lớp A: 10.0.0.1 đến 10.255.255.254
- Lớp B: 172.16.0.1 đến 172.31.255.254
- Lớp C: 192.168.0.1 đến 192.168.255.254
IV. Subnet Mask:
- Để biết Trạm đích thuộc Mạng cục bộ hay ở xa. Trạm nguồn cần 1 thông tin khác. Thông tin này chính là Subnet Mask.
- Subnet Mask là 1 địa chỉ 32 bit với quy luật các bits 1 tương ứng với phần NetID và các bits 0 tương ứng với phần HostID được sử dụng để che 1 phần của địa chỉ IP. Bằng cách này các máy tính có thể xác định đâu là Net ID và đâu là Host ID trong 1 địa chỉ IP.
- Mỗi Trạm trong mạng TCP/IP yêu cầu có 1 Subnet Mask.Nó được gọi là Subnet Mask mặc định, nếu nó chưa được chia Subnet (vì vậy nó chỉ có 1 Subnet Đơn), và được gọi là Subnet Mask tùy ý nếu nó được chia thành nhiều Subnet.
-
Vd: 1 số 32bit tiêu biểu cho 1 Subnet Mask mặc định được dùng bởi những Trạm đã cấu hình với 1 địa chỉ lớp C (vd 192.168.20.50) là :11111111 11111111 11111111 00000000 (255.255.255.0). - Khi 1 trạm có địa chỉ 192.168.20.50 gởi gói tin đến địa chỉ 192.168.50.20. Đầu tiên, Trạm sẽ thực hiện phép tính AND giữa Địa Chỉ cục bộ với Subnet Mask mặc định cục bộ. Bởi vì khi thực hiện phép tính AND 2 số, bất kì số nào AND với 0 sẽ là 0, và AND với 1 sẽ là chính nó => khi AND 192.168.20.50 với 255.255.255.0 kết quả là 192.168.20.0. Máy trạm sau đó sẽ thực hiện phép tính AND giữa Địa chỉ Đích với Subnet Mask giống trên. TCP/IP sau đó sẽ so sánh kết quả những giá trị từ 2 phép tính AND. Nếu 2 giá trị đồng nhất thì Trạm TCP/IP kết luận đích kia là trên Subnet cục bộ. Nếu 2 giá trị khác nhau thì Trạm xác định đích kia là ở xa.
Ta cũng có 1 cách viết khác để xác định Subnet Mask là:
- Địa chỉ IP / Tiền tố Mạng.
- Tiền tố Mạng được xác định bằng cách cộng tất cả các bit 1 trong dãy 32bit của Subnet Mask.
Vd: 192.168.5.10 có Subnet Mask mặc định là 255.255.255.0.
Đổi qua số nhị phân sẽ là 11111111 11111111 11111111 00000000.
=> Tổng cộng có 24 bit 1.
Vậy ta có thể viết dưới dạng: 192.168.5.10 / 24.
Bảng dưới đây sẽ đưa ra những Subnet Mask mặc định cho các Lớp Mạng:
- Lớp A: 255.0.0.0
- Lớp B: 255.255.0.0
- Lớp C: 255.255.255.0
Subnet Mask là một số 32 bits với quy luật giá trị các bits 0 và bits 1 như sau:
Nếu không chia mạng con thì các bits 1 của Subnet mask tương ứng với phần Net ID của địa chỉ IP. Các bits 0 tương ứng với phần Host ID của địa chỉ IP.
Như vậy nếu không chia Subnet thì Subnet mask của các lớp mạng là:
- Lớp A: 255.0.0.0
- Lớp B: 255.255.0.0
- Lớp C: 255.255.255.0
Nếu chia Subnet thì Subnet mask chia Host ID thành 2 phần :
- Một phần là Subnet
- Một phần là Host number.
Với quy luật giá trị các bits 0 và các bits 1 của Subnet mask là :
- Các bits 1 tương ứng với phần NetID và phần Subnet
- Các bits 0 tương ứng với phần Host number
Nguyên tắc hoạt động của Subnet mask:
- SUBNET MASK để xác định Trạm đích là Cục Bộ (Local) hay ở Xa (Remote) bằng cách AND từng bits của Subnet mask với từng bits của địa chỉ IP . Kết quả của phép AND địa chỉ IP với phần các bits 1 của Subnet mask sẽ lọc ra địa chỉ NetID và nếu các giá trị NetID bằng nhau thì đích là 1 trạm trên 1 phân đoạn Mạng Cục Bộ, Nếu kết quả phép AND không bằng nhau thì đích là 1 Trạm ở Xa, máy tính sẽ đưa gói tin đến Default Gateway đã được xác định trong TCP/IP Properties. Router được ghi rõ tại địa chỉ Default Gateway sau đó sẽ chịu trách nhiệm đưa gói tin đến Mạng 1 cách chính xác.
VI. Chia Subnet:
Việc chia Subnet được tiến hành qua 3 yêu cầu sau:
- Xác định Subnet mask
- Xác định Subnet ID
- Xác định phạm vi địa chỉ IP của mỗi Subnet
1. Xác định Subnet mask
Để xác định Subnet mask ta phải biết số bits cần mượn để chia Subnet
Áp dụng công thức tổng quát:
Y = 2X
Với Y là số mạng con cần chia
X là số bits cần mượn để chia mạng con
Lưu ý: bits mượn phải thuộc Octet đầu tiên của phần host ID
Xét ví dụ sau:
Chia địa chỉ mạng 131.107.0.0/16 thành 2 Subnet
Xác định Subnet mask:
Áp dụng công thức Y = 2X với y=2 suy ra x = 1
Do đó Subnet mask có 16 + 1 = 17 bits 1
Giá trị thập phân của Subnet mask là: 255.255.128.0
Địa chỉ mạng được viết lại 131.107.0.0/17.
2. Xác định Subnet ID
10000011. 01101011. 00000000. 00000000 Subnet ID 1 - 131.107.0.0
10000011. 01101011. 10000000. 00000000 Subnet ID 2 - 131.107.128.0
3. Xác định phạm vi địa chỉ IP cho mỗi Subnet
Subnet ID 1 - 131.107.0.0
10000011. 01101011. 00000000. 00000000 – Địa chỉ này không cấp
10000011. 01101011. 00000000. 00000001
10000011. 01101011. 01111111. 11111110
10000011. 01101011. 01111111. 11111111 – địa chỉ này không cấp
Vậy phạm vi địa chỉ IP của Subnet 1 từ : 131.107.0.1/17 đến 131.107.127.254/17
Subnet ID 2 – 131.107.128.0
10000011. 01101011. 10000000. 00000000 – địa chỉ này không cấp
10000011. 01101011. 10000000. 00000001
10000011. 01101011. 11111111. 11111110
10000011. 01101011. 11111111. 11111111 – địa chỉ này không cấp
Vậy phạm vi địa chỉ IP của Subnet 2 từ: 131.107.128.1/17 đến 131.107.255.254/17
- Chia subnet là phương pháp logic chia 1 địa chỉ mạng bằng cách tăng bit 1 sử dụng trong Subnet Mask của 1 Mạng. Phần mở rộng này cho phép bạn chia nhiều Subnet bên trong Mạng ban đầu
- Ban đầu địa chỉ lớp B khi chưa chia Subnet có 65.534 host. Khi chia Subnet thì Subnet Mask mới được cấu hình như hình bên dưới cho phép bạn chia thành 256 Subnet với 254 host trên 1 subnet.
Ưu điểm của việc chia Subnet là:
- khi chia xong những phân đoạn con có thể trải rộng trên nhiều phân đoạn vật lý (vd mạng có thể gồm 2 phân đoạn là Ethernet và Token Ring). Tuy nhiên ưu điểm chính là giảm lưu lượng mạng vì khi chia Subnet thì lưu lượng các gói tin Broadcast không làm ảnh hưởng đến toàn mạng do Router giữa các mạng sẽ chặn các gói tin Broadcast.
Lưu ý rằng có 2 địa chỉ không được dùng để cấp cho Host là:
- Địa chỉ mạng (tất cả các bit trong phần Host ID đều là 0)
- Địa chỉ Broadcast (tất cả các bit trong phần Host ID đều là 1).
Không có nhận xét nào:
Đăng nhận xét