程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> VC >> 關於VC++ >> Windows Socket網絡編程(一) TCP/IP體系結構、特點及相關

Windows Socket網絡編程(一) TCP/IP體系結構、特點及相關

編輯:關於VC++

一、TCP/IP 體系結構與特點

1、TCP/IP體系結構

TCP/IP協議實際上就是在物理網上的一組完整的網絡協議。其中TCP是提供傳輸層服務,而IP則是提供網絡層服務。TCP/IP包括以下協議:(結構如圖1.1)

(圖1.1)

IP:網間協議(Internet Protocol) 負責主機間數據的路由和網絡上數據的存儲。同時為ICMP,TCP,UDP提供分組發送服務。用戶進程通常不需要涉及這一層。

ARP:地址解析協議(Address Resolution Protocol)

此協議將網絡地址映射到硬件地址。

RARP:反向地址解析協議(Reverse Address Resolution Protocol)

此協議將硬件地址映射到網絡地址

ICMP:網間報文控制協議(Internet Control Message Protocol)

此協議處理信關和主機的差錯和傳送控制。

TCP:傳送控制協議(Transmission Control Protocol)

這是一種提供給用戶進程的可靠的全雙工字節流面向連接的協議。它要為用戶進程提供虛電路服務,並為數據可靠傳輸建立檢查。(注:大多數網絡用戶程序使用TCP)

UDP:用戶數據報協議(User Datagram Protocol)

這是提供給用戶進程的無連接協議,用於傳送數據而不執行正確性檢查。

FTP:文件傳輸協議(File Transfer Protocol)

允許用戶以文件操作的方式(文件的增、刪、改、查、傳送等)與另一主機相互通信。

SMTP:簡單郵件傳送協議(Simple Mail Transfer Protocol)

SMTP協議為系統之間傳送電子郵件。

TELNET:終端協議(Telnet Terminal Procotol)

允許用戶以虛終端方式訪問遠程主機

HTTP:超文本傳輸協議(Hypertext Transfer Procotol)

TFTP: 簡單文件傳輸協議(Trivial File Transfer Protocol)

2、TCP/IP特點

TCP/IP協議的核心部分是傳輸層協議(TCP、UDP),網絡層協議(IP)和物理接口層,這三層通常是在操作系統內核中實現。因此用戶一般不涉及。編程時,編程界面有兩種形式:一、是由內核心直接提供的系統調用;二、使用以庫函數方式提供的各種函數。前者為核內實現,後者為核外實現。用戶服務要通過核外的應用程序才能實現,所以要使用套接字(socket)來實現。

圖1.2是TCP/IP協議核心與應用程序關系圖。

(圖1.2)

二、專用術語

1、套接字

它是網絡的基本構件。它是可以被命名和尋址的通信端點,使用中的每一個套接字都有其類型和一個與之相連聽進程。套接字存在通信區域(通信區域又稱地址簇)中。套接字只與同一區域中的套接字交換數據(跨區域時,需要執行某和轉換進程才能實現)。WINDOWS 中的套接字只支持一個域——網際域。套接字具有類型。

WINDOWS SOCKET 1.1 版本支持兩種套接字:流套接字(SOCK_STREAM)和數據報套接字(SOCK_DGRAM)

2、WINDOWS SOCKETS 實現

一個WINDOWS SOCKETS 實現是指實現了WINDOWS SOCKETS規范所描述的全部功能的一套軟件。一般通過DLL文件來實現

3、阻塞處理例程

阻塞處理例程(blocking hook,阻塞鉤子)是WINDOWS SOCKETS實現為了支持阻塞套接字函數調用而提供的一種機制。

4、多址廣播(multicast,多點傳送或組播)

是一種一對多的傳輸方式,傳輸發起者通過一次傳輸就將信息傳送到一組接收者,與單點傳送(unicast)和廣播(Broadcast)相對應。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved