Cho biết giá trị nào sau đây có thể đại diện cho số hiệu cổng port number trong bộ giao thức TCP/IP

Bạn đang muốn tìm hiểu TCP/IP là gì? Bài viết này ddos.com.vn sẽ giúp bạn tìm hiểu về mô hình TCP/IP một cách chi tiết. Hãy cùng theo dõi ngay dưới đây

TCP/IP hay Transmission Control Protocol/Internet Protocol – Giao thức điều khiển truyền nhận, giao thức liên mạng, là bộ giao thức truyền thông chuẩn cho phép truyền và trao đổi thông tin để kết nối các thiết bị trong Internet kể cả môi trường khác nhau. Ngoài ra, TCP/IP là bộ giao thức mạng cho phép truy cập tài nguyên trên internet. TCP/IP trở thành chuẩn giao thức trên mạng Internet.

TCP/IP là gì

TCP/IP đến từ hai tên gọi của hai giao thức nền tảng của bộ giao thức TCP [Tranmission Control Protocol] và IP [Internet Protocol].

Tháng 6/1968 một cơ quan của bộ quốc phòng Mỹ là cục các dự án nghiên cứu tiên tiến [Advance research Project Agency – ARPA] đã xây dựng dự án kết nối các trung tâm nghiên cứu lớn trong toàn liên bang mở đầu là 4 viện nghiên cứu Stanford gồm Đại học California ở Los Angles, Đại học California ở Santa Barbara và Đại học Utah.

Mục tiêu của bộ quốc phòng Mỹ là từ các trạm ban đầu này có thể mở rộng ra các cơ sở nghiên cứu liên quan đến lĩnh vực quân sự, hình thành một mạng máy tính có độ tin cậy cao phù hợp với các hoạt động của bộ quốc phòng và an ninh. Giải pháp ban đầu được chọn là của Bolt Beranek Newman [BBN]. Lúc đó chưa có mạng LAN, WAN và các PC như ngày nay. Giải pháp của BBN bao gồm các nút mạng [được gọi là IMP – Interface Message Processor] là tổ hợp cả phần cứng và phần mềm cài đặt trên máy tính mini.

Mùa thu năm 1969 bốn trạm đầu tiên được kết nối thành công đánh dấu sự ra đời của mạng ARPANET- tiền thân của mạng Internet ngày nay. Giao thức truyền thông trong mạng ARPANET lúc đó là NCP [Network Control Protocol].

Đến giữa năm 1970, giao thức TCP/IP được Vint Cerf [Đại học Stanford] và Robert Kahn [BBN] phát triển. Ban đầu cùng tồn tại với NCP và đến năm 1983 thì hoàn toàn thay thế NCP trong ARPANET.

ARPANET nhanh chóng mở rộng thêm các nút mới và trở thành một mạng quốc gia. Trong thời gian đó, các nhà nghiên cứu ở trung tâm nghiên cứu Palo Alto [Palo Alto research center- PARC] của hãng Xerox đã phát triển một trong các công nghệ sớm nhất và phổ biến nhất của mạng cục bộ là Ethernet. Mô hình TCP/IP được tích hợp vào hệ điều hành Unix và sử dụng chuẩn Ethernet để kết nối các trạm làm việc với nhau.

Đến khi xuất hiện các máy tính cá nhân thì TCP/IP lại được tích hợp vào PC cho phép máy tính chạy DOS có thể truy cập các trạm chạy Unix và cứ thế TCP/IP ngày càng được sử dụng nhiều trong cả các mạng diện rộng lẫn các mạng cục bộ.

Như đã nói ở tên thì TCP/IP là sự kết hợp của 2 giao thức. IP [Giao thức liên mạng] giúp có thêm các thông tin dẫn đường vào các gói tin và cho phép các gói tin được gửi đến đích đã được định sẵn ban đầu. Còn giao thức TCP [Giao thức truyền vận] sẽ đóng nhiệm vụ kiểm tra và đảm bảo sự an toàn cho gói tin khi đi qua mỗi trạm. Nếu trong trường hợp giao thức TCP nhận thấy gói tin bị lỗi và nó sẽ báo tín hiệu và yêu cầu hệ thống gửi lại một gói tin khác.

Mô hình TCP/IP sẽ bao gồm 4 tầng chồng lên nhau như hình dưới đây:

TCP/IP bao gồm 4 tầng

Tầng vật lý [Physical] → Tầng mạng [Network] → Tầng giao vận [Transport] → Tầng ứng dụng [Application].

Đây là sự kết hợp giữa Tầng vật lý và tầng liên kết dữ liệu của mô hình OSI. Sẽ chịu trách nhiệm truyền dữ liệu giữa 2 thiết bị với nhau trong cùng một mạng. Ở đây, các gói tin sẽ được vào khung [Frame] và được đưa đến đích đã được định sẵn ban đầu.

Các giao thức chính trong tầng vật lý: Ethernet, Wi-Fi, Token ring, PPP, SLIP, FDDI, ATM, Frame Relay, SMDS, …

Ở đây tầng mạng được định nghĩa là một giao thức có nhiệm vụ truyền tải dữ liệu một cách logic trong mạng. Các phân đoạn dữ liệu sẽ được đóng gói [Packets] phù hợp với kích thước mỗi gói và với mạng chuyển mạch mà nó dùng để truyền tải. Lúc này, các gói tin sẽ được chèn thêm Header chứa thông tin của tầng mạng và tiếp tục sẽ được chuyển tới tầng tiếp theo.

Các giao thức chính trong tầng mạng: IP, ICMP và ARP.

Tầng này sẽ đảm nhiệm xử lý vấn đề giao tiếp giữa các máy chủ trong cùng một mạng hoặc khác mạng được kết nối với nhau thông qua bộ định tuyến. Tại đây dữ liệu sẽ được phân đoạn và mỗi đoạn sẽ không bằng nhau nhưng kích thước phải nhỏ hơn 64KB. Cấu trúc đầy đủ của một Segment lúc này là Header chứa thông tin điều khiển và sau đó là dữ liệu.

Tầng giao vận còn bao gồm 2 giao thức cốt lõi là TCPUDP. Trong đó, TCP sẽ đảm bảo chất lượng gói tin nhưng thời gian để kiểm tra đầy đủ thông tin và thứ dữ liệu rất nhiếu, Ngược lại thì giao thức UDP lại có tốc độ truyền tải nhanh hơn nhưng lại không đảm bảo được chất lượng dữ liệu được gửi đi.

Giao thức chỉnh trong tầng này là: TCP, UDP, DCCP, SCTP, IL, RUDP, …

Tầng này là tầng trên cùng của mô hình TCP/IP và nó sẽ đảm nhiệm vai trò giao tiếp dữ liệu liệu giữa 2 thiết bị khác nhau thông qua các dịch vụ mạng khác nhau. Khi dữ liệu được đưa đến đây nó sẽ được định dạng thành Byte nối Byte cùng với đó là các thông tin định tuyến giúp xác định đường đi đúng của gói tin.

Giao thức chính của tầng ứng dụng: DNS, TFTP, TLS/SSL, FTP, HTTP, IMAP, IRC, NNTP, POP3, SIP, SMTP, SNMP, SSH, TELNET, ECHO, BitTorrent, RTP, PNRP, rlogin, ENRP, …

Ưu điểm của TCP/IP linh hoạt và dễ dàng sửa dổi vì nó không phụ thuộc và chịu sự kiểm soát của bất kỳ công ty nào,

TCP/IP tương thích với tất cả các hệ điều hành, vì vậy có thể giao tiếp với các hệ thống khác. Ngoài ra, nó còn tương thích với tất các các loại phần cứng máy tính và mạng. TCP/IP có khả năng mở rộng cao và như một giao thức có thể định tuyến, nó có thể xác định đường dẫn hiệu quả nhất thông qua mạng.

Các tầng giữa TCP/IP là mô hình OSI

Không giống OSI gồm 7 lớp TCP/IP gồm 4 lớp. Nó được xem như họ giao thức cho Internet. Bốn lớp của TCP/IP gồm:

  • Network interface layer
  • Internet layer
  • Transport layer
  • Application layer

Mỗi lớp tương ứng với một hoặc nhiều lớp của mô hình OSI

Bộ giao thức TCP/IP bao gồm các giao thức sau:

IP/IPv6Internet Protocol.
TCPTransmission Control Protocol.
UDPUser Datagram Protocol.
ARP/RARPAddress Resolution Protocol/Reverse Address
DCAPData Link Switching Client Access Protocol
L2TPLayer 2 Tunneling Protocol.
DHCPDynamic Host Configuration Protocol.
ICMP / ICMPv6Internet Control Message Protocol.
IGMPInternet Group Management Protocol.
MARSMulticast Address Resolution Server.
PIMProtocol Independent Multicast-Sparse Mode [PIM-SM]
RIP2Routing Information Protocol.
RSVPResource ReSerVation setup Protocol.
VRRPVirtual Router Redundancy Protocol  
AHAuthentication Header.
ESPEncapsulating Security Payload.  
BGP4Border Gateway Protocol.
EGPExterior Gateway Protocol.
HSRPCisco Hot Standby Router Protocol.
IGRPnterior Gateway Routing.
NARPNBMA Address Resolution Protocol
NHRPNext Hop Resolution Protocol.
OSPFOpen Shortest Path First.
RUDPReliable UDP
TALITransport Adapter Layer Interface.
Van JacobsonCompressed TCP
XOTX.25 over TCP.
DNSDomain Name Service.
NetBIOS/IPNetBIOS/IP
LDAPLightweight Directory Access Protocol.
COPSCommon Open Policy Service
FTPFile Transfer Protocol.
TFTPTrivial File Transfer Protocol.
FUIPFinger User Information Protocol.
HTTPHypertext Transfer Protocol.
S-HTTPSecure Hypertext Transfer Protocol.
IMAP4Internet Message Access Protocol rev 4.
IPDCP Device Control.
ISAKMPInternet Message Access Protocol version 4rev1.
NTPNetwork Time Protocol.
POP3Post Office Protocol version 3.
RLOGINRemote Login.
RTSPReal-time Streaming Protocol.
SCTPStream Control Transmision Protocol.
SLPService Location Protocol.
SMTPSimple Mail Transfer Protocol.
SNMPSimple Network Management Protocol.
SOCKSSOCKS
TACACS+TACACS+
TELNET.TELNET.
WCCPWeb Cache Coordination Protocol
X-WindowsX-Windows
Bộ giao thức TCP/IP

Chịu trách nhiêm nhận và gửi các gói tin lên các mạng. TCP/IP được thiết kế độc lập với các phương pháp truy cập mạng, định dạng của frame… Vì vậy TCP/IP có thể kết nối các loại mạng khác nhau bao gồm các kỹ thuật mạng LAN như Ethernet, Token ring hay kỹ thuật mạng WAN như X25,ATM…Tầng Network interface tương ứng với tâng Data-link, Physical của mô hình tham chiếu OSI .

Tầng Internet chịu trách nhiệm đánh địa chỉ , đóng gói và các chức năng định tuyến. Các lõi giao thức trong tầng Internet là IP, ARP, ICMP, and IGMP.

IP [Internet protocol]: Là giao thức có thể định tuyến chiuk trách nhiệm đánh địa chỉ IP, định tuyến, phân mảnh và tập hợp các gói tin.

Address Resolution Protocol [ARP]: Chịu trách nhiêm chuyển địa chỉ của tầng Internet sang tầng network Interface

Internet Control Message Protocol [ICMP]: Chịu trách nhiệm cung cấp các chuẩn đoán và thông báo lỗi khi các gói tin truyền đi không thành công.

Internet Group Management Protocol [IGMP]: Chịu trách nhiệm quản lý các gói tin.

Chịu trách nhiệm cung cấp cho tầng ứng dụng[Application] với các phiên [session] và các dịch vụ liên kết. Giao thức lõi của tầng này là Transmission Control Protocol[TCP] và User datagram protocol[UDP].

TCP [Transmission Contron Protocol]: Là giao thức chuyển dữ liệu có bảo đảm. Giao thức TCP gửi từng gói dữ liệu đi, nơi nhận theo giao thức này phải có trách nhiệm thông báo và kiểm tra xem dữ liệu đã đến đủ hay chưa, có lỗi hay không có lỗi và phải có sự kết nối giữa nơi gửi và nơi nhận.

UDP [Uer Datagram Protoclol]: Là giao thức chuyển dữ liệu không bảo đảm. Không có sự kêt nối trước nào giữa nơi gửi và nơi nhận. Dữ liệu truyền đi mặc định rằng máy tính ở đầu nhận luôn ở trạng thái sẵn sàng để tiếp đón.Vì vậy nếu dữ liệu gửi đến bị lỗi trong quá trình truyền hay không nhận được đầy đủ thì giao thức cũng không có thông tin phản hồi lại cho nơi gửi.

Tầng ứng dụng cung cấp cho các ứng dụng khả năng truy cập các dịch vụ của các tầng khác và định nghĩa giao thức mà ứng dụng dùng để trao đổi dữ liệu. Có rất nhiều giao thức trong tầng mạng này và cũng có rất nhiều các giao thức mới thường xuyên được phát triển cho tầng ứng dụng. Các giao thức thông dụng dùng để trao đổi thông tin người dùng như :

Hypertext Transfer Protocol [HTTP]: Là giao thức truy cập các trang web của dịch vụ World Wide Web.

File Transfer Protocol [FTP]: là giao thức truyền file trên mạng.

Simple Mail Transfer Protocol [SMTP]: Được sử dụng để truyền các thông tin email trên mạng và rất nhiều các giao thức khác.

Có thể nhận biết class của một địa chỉ IP bởi nhìn bit đầu tiên trong dạng nhị phân hay trường trong biểu thị thập phân. Bảng sau biểu thị cách nhận biết các class A, B, C và số host và số network tối đa trong cho mỗi địa chỉ IP.

IP Address classIP Address FormatLeading bitsDecimal rangeMax networksMax Host/network
AN.H.H.H01- 12712716.777.216
BN.N.H.H10128-19116.38465.534
CN.N.N.H110192-2232.097.152254
Bảng 5.9 Số network và host tối đa trong các class

Bộ giao thức TCP/IP là tập hợp của một số các giao thức liên kết gọi là giao thức lõi của TCP/IP.Tất cả các ứng dụng và các giao thức khác đều dựa trên các dịch vụ cung cấp bởi các giao thức sau: IP, ARP, ICMP, IGMP, TCP và UDP.

IP là giao thức chịu trách nhiệm đánh địa chỉ và định tuyến các gói giữa các máy. IP không phải là giao thức kết nối có nghĩa là nó không có các phiên được thành lập trước khi trao đổi dữ liệu. IP cũng không phải là giao thức tin cậy có nghĩa là các gói tin truyền đi không được bảo đảm.

Một gói tin IP có thể bị mất, bị trễ hay bị truyền thừa và IP cũng không khắc phục lại các lỗi đó. Sự đảm bảo và khôi phục lại các gói tin bị mất hay bị lỗi do các giao thức ở tầng trên đảm bảo chính là TCP. Đơn vị dữ liệu dùng trong IP được gọi Datagram có định dạng như sau:

Một gói IP bao gồm một IP header và các thông tin. Bảng sau mô tả các thành phần trong IP header.

Tham sốMô tả
VER[4bits]Chỉ version hiện hành của IP
IHL[bits]Chỉ độ dài phần đầu[Internet Header Length] của datagram
Type of serviceĐặc tả các tham số về dịch vụ
Total length[16 bits]Chỉ độ dài toàn bộ datagram
Identification[16 bits]Cùng với các tham số khác như Source Address và Destination Address để định danh duy nhất cho một datagram khi nó còn trên mạng
Flag[3 bits]Liên quan tới phân đoạn
Fragment offset[13 bits]Chỉ vị trí đoạn ở trong datagram
Time to Live [8bits]Quy định thời gian tồn tại[s] của datagram trong mạng
Option [Độ dài thay đổi]Khai báo các tuỳ chọn do người dùng thay đổi
Padding[Độ dài thay đổi]Vùng đệm
Source IP AddressĐịa chỉ IP thực của nơi gửi
Destination IP AddressĐịa chỉ của đích cuối cùng
ProtocolCho biết IP tại nơi đích sẽ chuyển gói tin sang giao thức nào TCP,UDP,ICMP…
Header Checksum[16 bits]Một cơ chế tính toán đơn giản để kiểm tra sự toàn vẹn của IP header
Data[Độ dài thay đổi]Vùng dữ liệu có độ dài là bội của 8bits và tối đa là 65535 bytes
Các tham số của IP Header

IPv6 là một phiên bản mới của giao thức IP dựa trên IPv4. IPv6 tăng độ dài lên 128 bits để có thể đáp ứng được số địa chỉ mạng ngày càng tăng. IPv6 hỗ trợ khả năng mở rộng và tuỳ chọn. Định dạng của IPv6 header như sau :

Tham sốMô tả
Source portSố cổng của nguồn
Destination portSố cổng của đích
Sequence numberSố sequence của data octet đầu tiên trong một đoạn
Acknowledgment numberNếu bit ACK được set thì nó chức giá trị n tiếp theo của Sequence number
Data offset[4bits]Xác định vị trí dữ liệu bắt đầu
Reserved[6bits]Chưa dùng
Control bits[6bits]Có thể là U,A,P,R,F,S,F
Window[16bits]Số data octet của đoạn dữ liệu
ChecksumMột cơ chế tính toán đơn giản để kiểm tra sự toàn vẹn của IP Header
IP Header v6

Nếu router nhận được một gói tin quá lớn để có thể truyền được trên mạng thì nó sẽ chia gói tin này thành các gói tin nhỏ hơn. Khi gói tin được nhận tại địa chỉ đích thì IP tại đây sẽ tập hợp các gói này thành gói tin ban đầu. Quá trình đó được gọi là phân mảnh và tập hợp lại. Quá trình Phân mảnh và tập hợp lại diễn ra như sau:

  • Khi một gói IP được gửi đi từ một nơi nó đặt một giả trị duy nhất trong trường Identification .
  • Gói tin được nhận tại router. IP của router xác nhận đơn vị nhỏ nhất có thể truyền của mạng để có thể phân mảnh gói tin.
  • IP chia gói tin thành các gói nhỏ và các gói này được chuyển đi với các Header của nó.

Khi các gói nhỏ phân mảnh này được nhận tại một IP nào đó thì nó sẽ được tập hợp lại thành một gói như ban đầu.

Các máy tính trên cùng một mạng vật lý chỉ có thể liên lạc với nhau khi biết địa chỉ vật lý của nhau. Giao thức ARP cho phép một máy tính tìm đại chỉ vật lý của máy đích trên cùng một mạng vật lý, chỉ cần biết địa chỉ IP của máy đích.

Để cho phép một bộ định tuyến trong mạng thông báo lỗi hoặc cung cấp thông tin về những tình huống không mong đợi, những nhà thiết kế đã cung cấp thêm một cơ chế thông báo có mục đích đặc biệt cho các giao thức TCP/IP. Cơ chế này gọi là ICMP. ICMP cho phép một bộ định tuyến gửi thông báo lỗi và thông báo điều khiển đến các bộ định tuyến khác hoặc các máy khác. ICMP cung cấp phương tiện thông tin liên lạc giữa phần mềm IP trên một máy và phần mềm IP trên maý khác. Khi một datagram gây lỗi, ICMP chỉ có thể thông báo điều kiện lỗi trở về nguồn ban đầu của datagram. Nguồn này phải liên lạc lỗi với từng chương trình ứng dụng hoặc thực hiện thao tác khác để sửa lôĩ.

TCP là giao thức kiểu có liên kết [connection oriented] nghĩa là cần thành lập liên kết giữa các cặp thực thể TCP trước khi chúng trao đổi dữ liệu với nhau. Đơn vị sử dụng trong TCP là segment[đoạn dữ liệu] có định dạng như sau:

Các tham số trong định dạng:

Tham sốMô tả
Source port[16 bits]Số hiệu cổng của trạm nguồn
Destination port[16bits]Số hiệu cổng của trạm đích
Sequence number[32bits]Số hiệu của số byte đầu tiên của segment nếu bit SYN không được thiết lập.
Acknowledment number [32bits]Số hiệu của segment tiếp theo mà trạm nguồn đang chờ để nhận.
Data offset[4 bits]Số lượng từ [word ] trong TCP header
Reserved[6 bits]Chưa dùng
Control bitsCác bits điều khiển
Window[16 bits]Số lượng các byte dữ liệu bắt đầu từ byte được chỉ ra trong vùng ACK number
Checksum [16 bits]Mã kiểm soát lỗi
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
Option[Độ dài thay đổi]Các lựa chọn
Pading[Độ dài thay đổi]Phần chèn thêm vào header để bảo đảm phần header luôn kết thúc ở mốc 32 bits
TCP 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à có thể thay đổi trong vùng option.Một tiến trình trong một host truy nhập vào các dịch vụ của TCP cung cấp thông qua một cổng.Một cổng kết hợp với địa chỉ IP tạo thành một socket duy nhất trong liên mạng. Trước khi truyền dữ liệu giữa hai trạm cần phải thiết lập một liên kết TCP giữa chúng và khi không còn nhu cầu truyền dữ liệu thì liên kết được giải phóng.
Các tham số của TCP Header

Để ứng dụng có thể truy cập các dịch vụ của các giao thức lõi của TCP/IP theo một cách chuẩn hệ điều hành mạng cung cấp chuẩn công nghệ gọi là Application programming Interface[API].API là một tập các hàm và lệnh được lập trình để cho phép thực hiện các dịch vụ mạng.Hình 6.3 minh hoạ hai giao diện lạpp trình mạng thông dụng là Winsock và NetBIOS và các giao thức lõi của nó.

Windows Sockets API là API chuẩn của Windows cho ứng dụng sử dụng giao thức TCP và UDP.Các ứng dụng viết dưới Windows socket API có thể chạy trên các version của TCP/IP. Window socket cung cấp dịch vụ cho phép kết hợp một cổng và địa chỉ IP để thành lập một kết nối ,gửi và nhận dữ liệu.

NetBIOS được phát triển cho IBM bởi Sytek Corporation cho phép các ứng dụng giao kết qua mạng.NetBIOS là một chuẩn API cho phép lập trình I/O, điều khiển dưới các phần mềm điều khiển giao thức mạng . NetBIOS cung cấp các lệnh và hỗ trợ NetBIOS Name Management,NetBIOS Datagram và NetBISO session.

Video liên quan

Chủ Đề