C# .NET網路程式設計
概述
- 網路協議:計算機之間的相互通訊需要共同遵守一定的規律原則,這些規則就稱為網路協議。常見的協議有TCP/IP(傳輸控制協議/網際協議)、IPX/SPX、NetBEUI等。在區域網中用得比較多的是IPX/SPX,使用者如果訪問Internet,則必須在網路協議中新增TCP/IP。
- 介面:兩臺主機直接的通訊是每一個網路層都將資料的控制資訊傳遞到它的下一層,一直傳輸到最底的傳輸資料的介質,即物理介質,比如光纜。網路系統的每一個實體中,聯絡相鄰兩層的通路就是介面。在介面的規範裡,定義了下層向上層該提供哪些網路服務和操作。在對等實體之間透過協議來進行橫向通訊,在單個實體內每一層透過服務介面來傳遞資訊。
- 服務:下層向上層提供的服務分為兩種形式:面向連線的服務和無連線的服務。雖然面向連線的服務方式提高了通訊資料傳輸的可靠性,但是在實際選擇方案時需要考慮通訊代價。
TCP/IP網路架構
- 網路介面層:控制網路硬體,併傳送IP資料包,管理網路介質裡的諸多協議,定義如何使用實際網路來傳送資料。
- 網際網路層:將整個網路體系結構貫穿在一起的關鍵層,負責提供基本的封包傳送功能,將資訊分組傳送到目標端,各個分組相互獨立。網際網路層定義了正式的分組格式和協議,就是我們所說的IP。
- 傳輸層:提供對等實體間的資料傳送服務,確定資料已被送達並接受。主要的協議有TCP和UDP。
- 應用層:應用程式間溝通的協議,包含所有的高層協議,如Telnet,FTP,SMTP、HTTP和DNS等。
IP地址和埠
C# .NET 網路程式設計相關類
- IPAddress 類,用於表示一個IP地址。
- DNS 類,是一種分層次的,基於域的命名方案,並且用於一個分散式資料庫系統來實現此命名方案。DNS的主要用途是將主機名和電子郵件目標地址對映成IP地址。
- IPHostEntry 類,為Internet主機地址資訊提供容器類,將一個域名系統主機名與一組匹配的IP地址關聯。
- IPEndPoint 類,將網路端點表示為IP地址和埠號,它的物件表示指定的IP地址和埠組合。
- Socket 類,為網路通訊程式提供了一套豐富的方法和屬性,比如TCPClient,TCPListener,UDPClient等。
套接字
- Stream流式套接字,提供了一個面向連線、可靠的資料傳輸服務,資料無差錯、無重複的傳送,而且按傳送順序接收。
- Dgram資料包式套接字,提供一個無連線服務。資料包以獨立包形式被髮送,不提供無錯保證,資料可能丟失或重複,並且接收順序混亂。
- Raw原始套接字,允許對較低層協議(如IP、ICMP)直接訪問。
執行緒 /petitmal/
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30239065/viewspace-2734168/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- C# 網路程式設計:.NET 開發者的核心技能C#程式設計
- c#網路程式設計初探C#程式設計
- 初識C#網路程式設計C#程式設計
- 浪曦C#網路程式設計C#程式設計
- C#系統網路程式設計C#程式設計
- C#網路程式設計經典程式碼C#程式設計
- 網路通訊程式設計程式設計
- 網路協程程式設計程式設計
- Socket 程式設計 (網路篇)程式設計
- py網路工具程式設計程式設計
- C#與.NET入門之C# 8.0和.NET Core 3.0高階程式設計C#程式設計
- .NET框架-微軟C#程式設計風格官方指南框架微軟C#程式設計
- c#程式設計C#程式設計
- .Net程式設計師安卓學習之路2:訪問網路API程式設計師安卓API
- C#網路應用程式設計基礎練習題與答案(1)C#程式設計
- Python網路Socket程式設計Python程式設計
- python 網路篇(網路程式設計)Python程式設計
- 用C#下的Raw Socket程式設計實現網路封包監視 (轉)C#程式設計
- XMNetworking 網路庫的設計與使用
- 《C# 8.0和.NET Core 3.0高階程式設計(第4版)》之“C# 與 .NET 入門 ”C#程式設計
- 網路程式設計-計算機網路三要素程式設計計算機網路
- 網路程式設計-Netty-Reactor模型程式設計NettyReact模型
- [01] C#網路程式設計的最佳實踐C#程式設計
- .Net程式設計師安卓學習之路3:Post資料給網路API程式設計師安卓API
- kubernetes容器網路介面(CNI) midonet網路外掛的設計與實現
- .NET框架設計(常被忽視的C#設計技巧)框架C#
- C# 管道式程式設計C#程式設計
- C# 併發程式設計C#程式設計
- C# 非同步程式設計C#非同步程式設計
- C#~非同步程式設計C#非同步程式設計
- C#程式設計規範C#程式設計
- C#非同步程式設計C#非同步程式設計
- 005 Rust 網路程式設計,ipnet 介紹Rust程式設計
- Netty雜記2—NIO網路程式設計Netty程式設計
- Netty | 第1章 Java NIO 網路程式設計《Netty In Action》NettyJava程式設計
- linux c網路網路程式設計面試題收集Linux程式設計面試題
- Java網路程式設計和NIO詳解9:基於NIO的網路程式設計框架NettyJava程式設計框架Netty
- C#網路程式設計-簡單的通訊原始碼C#程式設計原始碼