2024年6月8日发(作者:)
【转】C#Socket网络编程入门
第一章C#Socket编程(1)基本的术语和概念
计算机程序能够相互联网,相互通讯,这使一切都成为可能,这也是当今
互联网存在的基础。那么程序是如何通过网络相互通信的呢?这就是我记录这
系列的笔记的原因。C#语言从一开始就是为了互联网而设计的,它为实现程序
的相互通信提供了许多有用API,这类应用编程接口被称为套接字(Socket)。
在开始学习C#Socket之前我们需要先来了解一下基本的术语和概念。
1.1计算机网络
计算机网络由一组通过通信信道(Communicationchannel)相互连接的机
器组成。这些机器被称为:主机(hosts)和路由器(routers)。
*通信信道——是将字节序列从一个主机传输到另一个主机的一种手段
(有线、无线(WiFi)等方式)。
*主机——是运行程序的计算机。
*路由器——是将信息从一个通信信道传递或转发到另一个通信信道。
TCP/IP网络通信流程图:
1
1.2
分组报文
*分组报文——在网络环境中由程序创建和解释的字节序列。
1.3
协议
协议相当于相互通信的一种约定,协议规定了分组报文的交换方式和它们
包含意义。
互联网所使用的协议是TCP/IP协议,TCP/IP协议族主要包括:
*IP协议(InternetProtocol,互联网协议)
*TCP协议(TransmissionControlProtocol,传输控制协议)
*UDP协议(UserDatagramProtocol,用户数据报协议)
1.3.1IP协议
*IP协议——是TCP/IP协议中唯一属于网络层的协议。将数据从一台主
机传输到另一台主机。
*IP协议——提供了一种数据服务:每组分组报文都有网络独立处理和
分发,类似于信件或包裹通过邮政系统发送一样。
*IP协议——是一个"尽力而为"(best-effort)的协议:它试图分发每一
个分组报文,在网络传输过程中,偶尔也会发生丢失报文或报文顺序打乱,或
者重复发送报文的情况。
在IP协议层之上是传输层(transportlayer),它提供了两种可选的协议:
TCP协议和UDP协议,两种协议都建立在IP层所提供的服务基础上,二者也被
称为"端到端传输协议(end-to-endtransportprotocol)"。根据应用程序协议
2


发布评论