Giao thức liên mạng IP

Một phần của tài liệu Ghép nối các mạng lan bằng giao thức tcp ip (Trang 28 - 37)

Mục đích của IP là cung cấp khả năng kết nối các mạng con thành liên mạng để truyền dữ liệu. Vai trò của IP tơng tự vai trò của giao thức tầng mạng trong Mô hình OSI.

IP là một kiểu giao thức “không liên kết” (connectionless) có nghĩa là không cần giai đoạn thiết lập liên kết trớc khi truyền dự liệu. Đơn vị dữ

liệu dùng trong IP đợc gọi là datagram, có khuôn dạng chỉ ra trong hình 2- 7.

Bit 0 3 4 7 8 15 16 31 VER IHL Type of Service Total Length

Identification Flags Fragment offfser Time to live Protocol Header Checksum

Source Address Destination Address

Options + Padding Data

(max: 65,535 bytes)

Hình 2-7: Khuôn dạng của IP datagram.

+ ý nghĩa của các con số nh sau:

Header

- VER (4 bits): chỉ version hiện hành của IP đợc cài đặt.

- IHL (4 bits): chỉ độ dài phần đầu (Internet Header Length) của datagram, tính theo đơn vị từ (word = 32 bits). Độ dài tối thiểu là5 từ (20 bytes).

- Type of service (8bits): đặc tả các tham số về dịch vụ, có dạng cụ thÓ nh sau:

Precedenc e

D T R Reserved

Trong đó:

Precedence (3bit): chỉ thị về quyền u tiên gửi datagram, cụ thể là:

111 – Network Control (cao nhÊt) 011 – Flash.

110 – Internetwork Control 010 – Immediate

101 – CRITIC/ECP 001 – Priority

100 – Flas 000 – Routine (thÊp

nhÊt).

D (Delay) (1bit): Chỉ thông lợng yêu cầu.

T = 0 thông lợng bình thờng.

T = 1 thông lợng cao.

R (Reliability( (1bit): Chỉ độ tin cậy yêu cầu.

R = 0 độ tin cậy bình thờng.

R = 1 độ tin cậy cao.

Total Length (16 bits): chỉ độ dài toàn bộ datagram, kể cả phần header (tính theo đơn vị bytes).

- Identification (16 bytes): 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 (3bits): liên quan đến sự phân đoạn (fragment) các datagram, cụ thể là:

0 1 2

O DF MF

Bit 0 = reserved – cha sử dụng, luôn lấy giá trị 0 Bit 1 (DF) = 0 (May Fragment)

= 1 (Don’t Fragment) Bit 2 (MF) = 0 (lasst Fragment)

3 0

= 1 (More Fragments)

- Fragment offset (13bits): chỉ vị trí của đoạn (fragment) ở trong datagram, tính theo đơn vị 64 bits, có nghĩa là mỗi đoạn (trừ đoạn cuối cùng) phải chứa một vùng dữ liệu có độ dài là bội số của 64 bits.

- Time to Live (8bits0: quy định thời gian tồn tại (tính bằng giây) của datagram trong liên mạng để tránh tình trạng một datagram bị quẩn trên liên mạng. Thời gian này đợc cho bởi trạm gửi và đợc giảm đi (thờng quy - ớc là 1 đơn vị) khi datagram đi qua một router của liên mạng.

- Protocol (8bits): 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).

- Header Checksum (16 bits): mã kiêm soát lỗi16 bits theo phơng pháp CRC, chỉ cho vùng header.

- Source Address (32 bits): địa chỉ của trạm nguồn.

- Destination Address (32 bits): Địa chỉ của trạm đích.

- Options (độ dài thay đổi): Khai báo các options do ngời gửi yêu cÇu.

- Padding (độ dài thay đổi): vùng đệm, đợc dùng để đảm bảo cho vùng header luôn kết thúc ở một mốc 32 bits.

- Data (độ dài thay đổi): vùng dữ liệu, có độ dài là bộ số của 8 bits và tối đa là 65535 bytes.

Sơ đồ địa chỉ hoá để định danh các trạm (host) trong liên mạng đợc gọi là địa chỉ IP 32 bits (32 bits IP Address). Mỗi địa chỉ IP có độ dài 32 bits đợc tách thành 4 vùng (mỗi vùng 1 bytes), có thể biểu thị dới dạng thập phân, bát phâ, thập lục phân hoặc nhị thân. Cách viết phổ biến nhất là dùng ký pháp thập có dấu chấm (dotted decimal notation) để tách các vùng. Mục

đích của địa chỉ IP là để định danh duy nhất cho một host bất kỳ trên liên mạng. Do tổ chức và độ lớn của các mạng con (subnet) của liên mạng có thể khác nhau, ngời ta chia các địa chỉ IP thành 5 lớp, ,ý hiệu là A, B, C, D và E với cấu trúc đợc chỉ ra trong hình 2 – 8.

Lu ý rằng các bít đầu tiên của byte đầu tiên đợc dùng để định danh lớp địa chỉ (0 – Lớp A; 10 – lớp B; 110 – lớp C; 1110 – lớp D và 11110 – líp E).

0 1 7 8 15 16 23 24 31

0 Netid Hostid

1 0 Netid Hostid

1 1 0 Netid Hostid

1 1 1 0 Multicast address

1 1 1 1 0 Reserved for future use

Netid = network identifier Hostid = host identifier Hình 2 – 8: Cấu trúc của các lớp địa chỉ IP

2.2.3. Giao thức điều khiển truyền TCP

TCP là một kiểu giao thức “có liên kết” (Connection – oriented) nghĩa là cần phải thiết lập liên kết (lôgic) giữa một cặp thực thể TCP trớc khi chúng trao đổi dữ liệu với nhau. Vai trò của TCP tơng tự nh vai trò của tầng giao vận trong mô hình OSI. Đơn vị dữ liệu sử dụng trong TCP gọi là segment (đoạn dữ liệu).

* Khuôn dạng dữ liệu của TCP:

+ Source Port và Destination Port (16 bits): là các địa chỉ điểm thâm nhập dịch vụ lớp giao vận (TSAP address). TCP có số lợng các cổng trong khoảng 0 đến 216-1. Các cổng có số nằm trong khoảng từ 0 đến 1023 đợc biết đến nhiều nhất vì các cổng này đợc sử dụng cho việc truy nhập tới các dịch vụ tiêu chuẩn.

0 15 16 31

Source Port Destination Port

Sequence Number Acknowledgment Number

R U

R G

A C K

P S H

R S T

S Y N

F I N

Window

Checksum Urgent Pointer

Option Padding

TCP Data

3 2 Hình 2-9: Khuôn dạng dữ liệu của TCP

* Các tham số trong khuôn dạng trên có ý nghĩa nh sau:

+ Source Port và Destination Port (16 bits): là các địa chỉ điểm thâm nhập dịch vụ lớp giao vận (TSAP address). TCP có số lợng các cổng trong khoảng 0 đến 216-1. Các cổng có số nằm trong khoảng từ 0 đến 1023 đợc biết đến nhiều nhất vì các cổng này đợc sử dụng cho việc truy nhập tới các dịch vụ tiêu chuẩn.

+ Sequene Number (32 bits): số hiệu các byte đầu tiên của segment trừ bit SYN đợc thiết lập. Nếu bit SYN đợc thiết lập thì Sequence Number là số hiệu tuần tự khởi đầu (ISN) là byte dữ liệu đầu tiên là ISN + 1. Tham số này có vai trò nh tham số N (S) trong HDLS.

+ Acknowledgment Number (32 bits): số hiệu của segment tiếp theo mà trạm nguồn đang chờ để nhận. Ngầm ý báo hiệu hết (các) segment mà trạm đích đã gửi cho trạm nguồn. Tham số này chỉ đợc xác địnhkhi ACK = 1, tham số này có vai trò nh tham số N (R) trong HDLC.

+ Data offset (4 bits): số lợng từ – 32 bit (32 bit words) trong TCP header (tham số nà có độ dài của TCP header).

+ Reserved (6 bits): dành để dùng trong tơng lai.

+ Control bits (các bít điều khiển).

+ URG: vùng con trỏ khẩn (Urgent Poiter) có hiệu lực.

+ ACK: vùng báo nhận (ACK number) có hiệu lực.

+ PSH: chuyển số liệu (Push), không cần nhớ.

+ RST: huỷ bỏ kết nối do lỗi phần mềm hay phần cứng.

+ SYN: đồng bộ để thiết lập kết nối.

+ FIN: không còn dữ liệu từ trạm nguồn, kết thúc kết nối.

+ Window (16 bits): cấp phát credit để kiểm soát luồng dữ liệu (cơ

chế cửa sổ). Đây chính là số lợng các byte dữ liệu, bắt đầu từ byte đợc chỉ ra trong vùng ACK number mà trạm nguồn có sẵn sàng để nhận.

+ Checksum (16 bits): mã kiểm soát lỗi (theo phơng pháp CRC) cho toàn bộ sêgmnt (header + data).

+ Urgent Pointer (16 bits): con trỏ này trỏ tới số hiệu tuần tự của byte

đi theo sau dữ liệu khẩn, cho phép bên nhận biết đợc độ dài của dữ liệu khẩn. Vùng này có có hiệu lực khi bít URG đợc thiết lập.

+ Options (độ dài thay đổi): khai báo các option của TCP, trong đó có độ dài tối đa của vùng TCP data trong một segment.

+ Padding (độ dài thay đổi): đây là phần chèn thêm vào header để

đảm bảo phần header luôn kết thúc ở một mốc 32 bits. Phần thêm này gồm toàn số 0.

+ PCP data (độ dài thay đổi): chứa dữ liệu của tầng trên, có độ dài tối

đa ngầm định là 536 bytes. Giá trị này có thể hiệu chỉnh bằng cách khai báo trong vùng option.

2.2.4. Giao thức UDP.

UDP (User Datagram Protocol) là giao thức “không liên kết” đợc sử dụng thay thế cho TCP ở trên IP theo yêu cầu của ứng dụng. Khác với TCP, UDP không có chức năng thiếtt lập và giải phóng liên kết, tơng tự nh IP. Nó cũng không cung cấp các cơ chế báo nhận (acknowledgment), không xắp xếp tuần tự các đơn vị dữ liệu (datagram) đến và có thể dẫn đến tình trạng mất hoặc trùng dữ liệu mà không hề có thông báo lỗi cho ngời gửi. Tóm lại nó cung cấp các dịch vụ giao vận cho ngời sử dụng nh trong TCP.

UDP cũng cung cấp cơ chế gán và quả lý các số hiệu cổng (port numbers) để định danh duy nhất cho các ứng dụng chạy trên một trạm của mạng. Do ít chức năng phức tạp nên UDP có xu thế hoạt động nhanh hơn so với TCP. Nó thờng đợc dùng cho các ứng dụng không đòi hỏi độ tin cậy cao trong giao vận. Khuôn dạng của UDP datagram đợc mô tả trong hình 2-11 với các vùng tham số đơn giản hơn nhiều so với TCP segment.

0 15 16 31 Source port Destination port

Message lenth Checksum

DATA Hình 2-11: Khuôn dạng của UDP datagram.

Lu ý: Còn có các giao thức và dịch vụ khác trong bộ TCP/IP, sau đây là bảng liệt kê đầy đủ:

Data Link Layer( Network Access)

ARP/RARP Address Resolution Protocol/Reverse Address

3 4 DCAP Data Link Switching Client Access Protocol

Network Layer

DHCP Dynamic Host Configuration Protocol

DVMRP Distance Vector Multicast Routing Protocol ICMP/ICMPv6 Internet Control Message Protocol

IGMP Internet Group Management Protocol IP Internet Protocol version 4

IPv6 Internet Protocol version 6

MARS Multicast Address Resolution Server

PIM Protocol Independent Multicast-Sparse Mode (PIM-SM)

RIP2 Routing Information Protocol

RIPng for IPv6 Routing Information Protocol for IPv6 RSVP Resource ReSerVation setup Protocol VRRP Virtual Router Redundancy Protocol Transport Layer

ISTP

Mobile IP Mobile IP Protocol

RUDP Reliable UDP

TALI Transport Adapter Layer Interface TCP Transmission Control Protocol

UDP User Datagram Protocol

Van Jacobson compressed TCP

XOT X.25 over TCP

Session Layer

BGMP Border Gateway Multicast Protocol Diameter

DIS Distributed Interactive Simulation

DNS Domain Name Service

ISAKMP/IKE Internet Security Association and Key Management Protocol and Internet Key Exchange Protocol

iSCSI Small Computer Systems Interface LDAP Lightweight Directory Access Protocol MZAP Multicast-Scope Zone Announcement

Protocol

NetBIOS/IP NetBIOS/IP for TCP/IP Environment Application Layer

COPS Common Open Policy Service

FANP Flow Attribute Notification Protocol Finger User Information Protocol

FTP File Transfer Protocol

HTTP Hypertext Transfer Protocol

IMAP4 Internet Message Access Protocol rev 4 IMPPpre/IMPPmes Instant Messaging and Presence Protocols

IPDC IP Device Control

IRC Internet Relay Chat Protocol

ISAKMP Internet Message Access Protocol version 4rev1

ISP

NTP Network Time Protocol

POP3 Post Office Protocol version 3

Radius Remote Authentication Dial In User Service

RLOGIN Remote Login

RTSP Real-time Streaming Protocol

SCTP Stream Control Transmision Protocol S-HTTP Secure Hypertext Transfer Protocol SLP Service Location Protocol

SMTP Simple Mail Transfer Protocol

SNMP Simple Network Management Protocol SOCKS Socket Secure (Server)

TACACS+ Terminal Access Controller Access Control System

TELNET TCP/IP Terminal Emulation Protocol TFTP Trivial File Transfer Protocol

WCCP Web Cache Coordination Protocol

X-Window X Window

Ta thấy ở bảng trên, mặc dù có rất nhiều nhiều giao thức khác trong bộ TCP/IP nhng 3 giao thức IP ( tầng Network), TCP và UDP ( tầng Transport ) là 3 giao thức chủ yếu nhất.

2.2.5. Tóm tắt nguyên tắc hoạt động của TCP/IP nh sau:

1. Dữ liệu truyền từ một ứng dụng TCP/IP hoặc ứng dụng mạng thông qua một cổng TCP hay UDP tới giao thức lớp TCP hoặc UDP. Các chơng trình có thể truy cập mạng qua TCP hoặc UDP, điều này phụ thuộc vào yêu cầu của chơng trình.

*TCP (Transmission Control Protocol- giao thức này ở lớp vận chuyển):

Giao thức kiểm soát truyền thông tin giao thức này cung cấp các dịch vụ h - ớng kết nối ( connection-oriented) và thực hiện các công việc nh kiểm soát thứ tự của các gói tin, việc đánh địa chỉ các dịch vụ cũng nh các chức năng kiểm tra lỗi tinh vi hơn các giao thức không định hớng kết nối. TCP đảm bảo việc lu chuyển của dữ liệu và đáng tin cậy hơn UDP, nhng việc có thêm các chức năng này đồng nghĩa rằng TCP chậm hơn UDP

3 6

TCP UDP

IP

Network Application

Hardware Interface

Application

Transport

Network

Network Acess

*UDP ( User Data Protocol): Giao thức gói dữ liệu ngời dùng, Giao thức này cũng hoạt động ở lớp giao vận, giống nh giao thức TCP. Tuy nhiên đây là giao thức không định hớng kết nối, và làm phát sinh ít phụ phí hơn TCP.

Do ít phụ phí hơn, nó truyền dữ liệu nhanh hơn, nhng cũng ít tin cậy hơn.

2. Khi các gói dữ liệu đi tới cấp Internet, tại đây giao thức IP cung cấp thông tin địa chỉ logic và gắn thông tin đó vào gói dữ liệu.

3. Gói dữ liệu có IP tiến vào lớp truy cập mạng, tại đây nó chuyển giao cho bộ phần mềm đợc thiết kế để tơng tác với mạng vật lý. Lớp truy cập mạng tạo ra một hoặc nhiều khung dữ liệu (frame) để có thể vào mạng vật lý.

4. Khung dữ liệu sẽ đợc chuyển đổi thành một dải bit để tới bộ phận trung gian mạng.

Sơ đồ sau đây minh hoạ cho nguyên lý trên:

Để kết thúc phần trình bày về TCP/IP, cần lu ý rằng trong quá trình l- u chuyển trong một liên mạng bao gồm nhiều mạng con khác nhau (LAN

Một phần của tài liệu Ghép nối các mạng lan bằng giao thức tcp ip (Trang 28 - 37)

Tải bản đầy đủ (DOCX)

(37 trang)
w