tcpip與伺服器聯系
⑴ tcpip是什麼,幹嘛用的,在哪
Tcpip是一個網路通信模型,以及一整個網路傳輸協議家族,為互聯網的基礎通信架構。Tcpip常被通稱為TCP/IP協議族,簡稱TCP/IP。tcpip協議中,Tcp協議在傳輸層,ip協議在網際層。
TCP/IP協議是用來提供點對點的鏈接機制,將數據應該如何封裝、定址、傳輸、路由以及在目的地如何接收,都加以標准化。它將軟體通信過程抽象化為四個抽象層,採取協議堆棧的方式,分別實現出不同通信協議。
TCP/IP分為tcp協議和ip協議:
TCP(傳輸控制協議)是一種面向連接的、可靠的、基於位元組流的傳輸層通信協議,由IETF的RFC 793定義。ip協議是互聯網協議地址,縮寫為IP地址,是分配給用戶上網使用的網際協議 的設備的數字標簽。常見的IP地址分為IPv4與IPv6兩大類。
(1)tcpip與伺服器聯系擴展閱讀
TCP/IP包括兩個協議,傳輸控制協議(TCP)和網際協議(IP),但TCP/IP實際上是一組協議,它包括上百個各種功能的協議。
如:遠程登錄、文件傳輸和電子郵件等,而TCP協議和IP協議是保證數據完整傳輸的兩個基本的重要協議。通常說TCP/IP是Internet協議族,而不單單是TCP和IP。
TCP/IP協議的基本傳輸單位是數據包,TCP協議負責把數據分成若干個數據包,並給每個數據包加上包頭,包頭上有相應的編號,以保證在數據接收端能將數據還原為原來的格式。
IP協議在每個包頭上再加上接收端主機地址,這樣數據找到自己要去的地方,如果傳輸過程中出現數據丟失、數據失真等情況。
TCP/IP協議數據的傳輸基於TCP/IP協議的四層結構,數據在傳輸時每通過一層就要在數據上加個包頭,其中的數據供接收端同一層協議使用,而在接收端,每經過一層要把用過的包頭去掉,這樣來保證傳輸數據的格式完全一致。
⑵ TCPIP協議及配置
TCP/IP協議
最廣泛支持的通信協議集合,包括大量Internet應用中的標准協議支持跨網路架構、跨操作系統平台的通信
逐級之間通信的三個要素
IP地址 子網掩碼 IP路由
IP地址(IP address) 標識一台計算機
地址組成(點分十進制)
-32個二進制是表示為4個十進制數,以 . 隔開
IP地址分類 (127.0.0.1:永遠代表本機地址)
-A類:1~127 網+主+主+主
-B類:128~191 網+網+主+主
-C類:192~223 網+網+網+主
-D類:224~239 組播
-E類:240~254 科研
配置IP地址 略
IP地址組成:網路位+主機位
-A類:1~127 網+主+主+主 1.1.1.1
-B類:128~191 網+網+主+主
-C類:192~223 網+網+網+主
網路位:相當於區號作用,標識一個區域(網路)
主機位:相當於區域中的編號
192.168.1.1 ------------->開頭為192可以判斷為C類地址
C類:192~223 網+網+網+主 ----------------> 192.168.1.1 網路中編號為1的計算機
網+網+網+主 ----------------> 192.168.2.1 網路中編號為1的計算機
子網掩碼:為計算機區分IP地址的網路位和主機位,利用二進制的1代表網路位利用二進制的0代表主機位
192.168.1.1
11000000.10101000.00000001.00000001
11111111.11111111.11111111.00000000------------------255.255.255.0
IP地址表示
192.169.1.1 255.255.255.0
192.168.1.1 /24 有24個網路位
拓展:
DNS伺服器:將用戶在瀏覽器輸入的域名,解析為對應的IP地址
www.qq.com------------------------192.168.1.1
網關設備:一般為路由器
網關地址:一個網路到另一個網路的關口(作用解決不同網路通信)
⑶ 如何打開伺服器的tcpip管道共享
第一步:檢查AutoShareServer和AutoShareWks注冊表值,以確保未將它們設置為0。依次點擊「開始→運行」,輸入regedit,然後按回車鍵進入注冊表編輯器。
第二步:找到並單擊HKEY_LOCAL_MACHINE_System_CurrentControlSetServices_LanmanServerParameters。
第三步:如果LanmanServerParameters子項中的AutoShareServer 和AutoShareWks DWORD值配置的數值為0,則將該值更改為1。
第四步:重新啟動計算機。通常運行Windows Server 2003、Windows XP、Windows 2000的計算機會在啟動過程中自動創建。
第五步:啟動計算機後,我們可以通過運行CMD進入命令行模式,然後運行net share,在共享列表中應該會查找到Admin$、C$和IPC$等默認共享的存在。
提示:如果發現按照上述設置,默認共享還沒有出現的話,那麼很有可能是病毒或非法程序破壞了系統,我們需要用更新了最新病毒庫的殺毒軟體在安全模式下掃描整個系統。
另外--控制面板--管理工具-服務--將裡面的server服務以及Telnet下面的terminal serveices 服務都設置為啟用並設置為自動
⑷ tcpip 一對多通信如何實現
同學您好!!!單個伺服器與
多個用戶的通信連接,用戶方面的流程是:1.新建套接字Socket
s;2.確定伺服器IP地址和埠號 addr = 192.168.1.12 port =
8080;3.對本機地址進行顯式或隱式綁定(一般採用隱式綁定故這步可以忽略)4.開啟與伺服器的連接connect(s,addr);5.進行數據交
互傳輸 send recv;6.通信結束 關閉套接字closesocket(s);
伺服器方面的流程是:1.新建套接字Socket
s;2.確定本地IP和埠號(不能隱式綁定)addr = 192.168.1.12 port =
8080;3.對本地IP和埠進行綁定bind(s,addr);4.對埠進行監聽listen(s);5.接收一個連接 newsock =
accept(s);6.伺服器在接收了一個連接之後,便新建一個套接字newsock,
此時要開啟一個子線程來負責處理與該用戶機的數據傳輸,而主線程繼續監聽埠創建新的子線程來與多個用戶進行連接。C下可以採用createThread
函數,
CreateThread(NULL,0,
chat,//子線程函數入口
&newsock,//傳給子線程的參數
0,&Tid);
然後在chat函數中進行recv和send即可
⑸ 什麼是tcpiptcpip各有什麼作用
TCP/IP的通訊協議
這部分簡要介紹一下TCP/IP的內部結構,為討論與互聯網有關的安全問題打下基礎。TCP/IP協議組之所以流行,部分原因是因為它可以用在各種各樣的信道和底層協議(例如T1和X.25、乙太網以及RS-232串列介面)之上。確切地說,TCP/IP協議是一組包括TCP協議和IP協議,UDP(User Datagram Protocol)協議、ICMP(Internet Control Message Protocol)協議和其他一些協議的協議組。
TCP/IP整體構架概述
TCP/IP協議並不完全符合OSI的七層參考模型。傳統的開放式系統互連參考模型,是一種通信協議的7層抽象的參考模型,其中每一層執行某一特定任務。該模型的目的是使各種硬體在相同的層次上相互通信。這7層是:物理層、數據鏈路層、網路層、傳輸層、話路層、表示層和應用層。而TCP/IP通訊協議採用了4層的層級結構,每一層都呼叫它的下一層所提供的網路來完成自己的需求。這4層分別為:
應用層:應用程序間溝通的層,如簡單電子郵件傳輸(SMTP)、文件傳輸協議(FTP)、網路遠程訪問協議(Telnet)等。
傳輸層:在此層中,它提供了節點間的數據傳送服務,如傳輸控制協議(TCP)、用戶數據報協議(UDP)等,TCP和UDP給數據包加入傳輸數據並把它傳輸到下一層中,這一層負責傳送數據,並且確定數據已被送達並接收。
互連網路層:負責提供基本的數據封包傳送功能,讓每一塊數據包都能夠到達目的主機(但不檢查是否被正確接收),如網際協議(IP)。
網路介面層:對實際的網路媒體的管理,定義如何使用實際網路(如Ethernet、Serial Line等)來傳送數據。
TCP/IP中的協議
以下簡單介紹TCP/IP中的協議都具備什麼樣的功能,都是如何工作的:
1. IP
網際協議IP是TCP/IP的心臟,也是網路層中最重要的協議。
IP層接收由更低層(網路介面層例如乙太網設備驅動程序)發來的數據包,並把該數據包發送到更高層---TCP或UDP層;相反,IP層也把從TCP或UDP層接收來的數據包傳送到更低層。IP數據包是不可靠的,因為IP並沒有做任何事情來確認數據包是按順序發送的或者沒有被破壞。IP數據包中含有發送它的主機的地址(源地址)和接收它的主機的地址(目的地址)。
高層的TCP和UDP服務在接收數據包時,通常假設包中的源地址是有效的。也可以這樣說,IP地址形成了許多服務的認證基礎,這些服務相信數據包是從一個有效的主機發送來的。IP確認包含一個選項,叫作IP source routing,可以用來指定一條源地址和目的地址之間的直接路徑。對於一些TCP和UDP的服務來說,使用了該選項的IP包好象是從路徑上的最後一個系統傳遞過來的,而不是來自於它的真實地點。這個選項是為了測試而存在的,說明了它可以被用來欺騙系統來進行平常是被禁止的連接。那麼,許多依靠IP源地址做確認的服務將產生問題並且會被非法入侵。
2. TCP
如果IP數據包中有已經封好的TCP數據包,那麼IP將把它們向『上』傳送到TCP層。TCP將包排序並進行錯誤檢查,同時實現虛電路間的連接。TCP數據包中包括序號和確認,所以未按照順序收到的包可以被排序,而損壞的包可以被重傳。
TCP將它的信息送到更高層的應用程序,例如Telnet的服務程序和客戶程序。應用程序輪流將信息送回TCP層,TCP層便將它們向下傳送到IP層,設備驅動程序和物理介質,最後到接收方。
面向連接的服務(例如Telnet、FTP、rlogin、X Windows和SMTP)需要高度的可靠性,所以它們使用了TCP。DNS在某些情況下使用TCP(發送和接收域名資料庫),但使用UDP傳送有關單個主機的信息。
3.UDP
UDP與TCP位於同一層,但對於數據包的順序錯誤或重發。因此,UDP不被應用於那些使用虛電路的面向連接的服務,UDP主要用於那些面向查詢---應答的服務,例如NFS。相對於FTP或Telnet,這些服務需要交換的信息量較小。使用UDP的服務包括NTP(網落時間協議)和DNS(DNS也使用TCP)。
欺騙UDP包比欺騙TCP包更容易,因為UDP沒有建立初始化連接(也可以稱為握手)(因為在兩個系統間沒有虛電路),也就是說,與UDP相關的服務面臨著更大的危險。
4.ICMP
ICMP與IP位於同一層,它被用來傳送IP的的控制信息。它主要是用來提供有關通向目的地址的路徑信息。ICMP的『Redirect』信息通知主機通向其他系統的更准確的路徑,而『Unreachable』信息則指出路徑有問題。另外,如果路徑不可用了,ICMP可以使TCP連接『體面地』終止。PING是最常用的基於ICMP的服務。
5. TCP和UDP的埠結構
TCP和UDP服務通常有一個客戶/伺服器的關系,例如,一個Telnet服務進程開始在系統上處於空閑狀態,等待著連接。用戶使用Telnet客戶程序與服務進程建立一個連接。客戶程序向服務進程寫入信息,服務進程讀出信息並發出響應,客戶程序讀出響應並向用戶報告。因而,這個連接是雙工的,可以用來進行讀寫。
兩個系統間的多重Telnet連接是如何相互確認並協調一致呢?TCP或UDP連接唯一地使用每個信息中的如下四項進行確認:
源IP地址 發送包的IP地址。
目的IP地址 接收包的IP地址。
源埠 源系統上的連接的埠。
目的埠 目的系統上的連接的埠。
埠是一個軟體結構,被客戶程序或服務進程用來發送和接收信息。一個埠對應一個16比特的數。服務進程通常使用一個固定的埠,例如,SMTP使用25、Xwindows使用6000。這些埠號是『廣為人知』的,因為在建立與特定的主機或服務的連接時,需要這些地址和目的地址進行通訊。
⑹ 關於tcpip 網路編程中客戶端和伺服器的雙向通信
伺服器端與客戶端都使用監聽,客戶端要與服務端通訊的時候,客戶端會向服務端發送相關請求,並監聽。服務端一直在監聽,當收到請求後會返回相關信息給客戶端。跟打電話是一樣的。
⑺ TCP/IP是什麼意思
TCP/IP 指傳輸控制協議/網際網路互聯協議(Transmission Control Protocol / Internet Protocol),又名網路通訊協議。
TCP/IP是Internet最基本的協議、Internet國際互聯網路的基礎,由網路層的IP協議和傳輸層的TCP協議組成,是供連接網際網路的計算機進行通信的通信協議。
TCP/IP 定義了電子設備(比如計算機)如何連入網際網路,以及數據如何在它們之間傳輸的標准。
TCP/IP協議從字面上看,有人可能會認為 TCP/IP 是指 TCP 與 IP 兩種協議。雖然實際中的確有這兩種協議,但是在很多情況下,它泛指 IP、ICMP、TCP、UDP、TELNET、FTP、HTTP 等協議群,所以有時也稱 TCP/IP 為網際協議族。
(7)tcpip與伺服器聯系擴展閱讀:
其實 TCP/IP 也是使用 OSI七層協議的觀念, 所以同樣具有分層的架構,只是將它簡化為四層,在結構上面比較沒有這么嚴謹,程序撰寫會比較容易些。
TCP/IP協議族是一個四層協議系統,自底而上分別是數據鏈路層、網路層、傳輸層和應用層。每一層完成不同的功能,且通過若干協議來實現,上層協議使用下層協議提供的服務。
1、數據鏈路層。
該層實現了網卡介面的網路驅動程序,以處理數據在物理媒介(比如乙太網、令牌環等)上的傳輸。不同的物理網路具有不同的電氣特性,網路驅動程序隱藏了這些細節,為上層協議提供一個統一的介面。
數據鏈路層兩個常用的協議是ARP協議(Address Resolve Protocol,地址解析協議)和RARP協議(Reverse Address Resolve Protocol,逆地址解析協議)。
它們實現了IP地址和機器物理地址(通常是MAC地址,乙太網、令牌環和802.11無線網路都使用MAC地址)之間的相互轉換。
2、網路層
網路層實現數據包的選路和轉發。WAN(Wide Area Network,廣域網)通常使用眾多分級的路由器來連接分散的主機或LAN(Local Area Network,區域網),因此,通信的兩台主機一般不是直接相連的,而是通過多個中間節點(路由器)連接的。
網路層的任務就是選擇這些中間節點,以確定兩台主機之間的通信路徑。同時,網路層對上層協議隱藏了網路拓撲連接的細節,使得在傳輸層和網路應用程序看來,通信的雙方是直接相連的。
網路層最核心的協議是IP協議(Internet Protocol,網際網路協議)。IP協議根據數據包的目的IP地址來決定如何投遞它。如果數據包不能直接發送給目標主機,那麼IP協議就為它尋找一個合適的下一跳(next hop)路由器,並將數據包交付給該路由器來轉發。
多次重復這一過程,數據包最終到達目標主機,或者由於發送失敗而被丟棄。可見,IP協議使用逐跳(hop by hop)的方式確定通信路徑。
3、傳輸層
傳輸層為兩台主機上的應用程序提供端到端(end to end)的通信。與網路層使用的逐跳通信方式不同,傳輸層只關心通信的起始端和目的端,而不在乎數據包的中轉過程。圖1-3展示了傳輸層和網路層的這種區別。
4、應用層
應用層負責處理應用程序的邏輯。數據鏈路層、網路層和傳輸層負責處理網路通信細節,這部分必須既穩定又高效,因此它們都在內核空間中實現,而應用層則在用戶空間實現,因為它負責處理眾多邏輯,比如文件傳輸、名稱示等。
而應用層則在用戶空間實現,因為它負責處理眾多邏輯,比如文件傳輸、名稱查詢和網路管理等。如果應用層也在內核中實現,則會使內核變得非常龐大。
當然,也有少數伺服器程序是在內核中實現的,這樣代碼就無須在用戶空間和內核空間來回切換(主要是數據的復制),極大地提高了工作效率。
應用層協議(或程序)可能跳過傳輸層直接使用網路層提供的服務,比如ping程序和OSPF協議。應用層協議(或程序)通常既可以使用TCP服務,又可以使用UDP服務,比如DNS協議。