24.1.1

  服务器:提供信息的计算机或程序,

  客户机:请求信息的计算机或程序,

  网络——主要是用来连接服务器与客户机实现两者相互通信的。

    局域网:LAN(Local Area Network)    广域网:WAN(Wide……)

    因特网——由无数的 LAN 和 WAN 组成

24.1.2 网络协议介绍

    网络协议规定了计算机之间连接的物理、机械(网线与网卡的连接规定)、电气(有效的电平范围)等特征,

  以及计算机之间的相互寻址规则、数据发送冲突的解决、长数据如何分段传送与接收等。

  1. IP协议

      Internet 网络采用的协议是 TCP/IP 协议,Internet 依靠 TCP/IP 协议在全球范围内实现不同硬件结构、

    不同操作系统不同网络系统互联

      每一台主机在网络上通过为其分配的 Internet 地址表示自己,这个地址就是 IP 地址。

       TCP/IP 模式是一种层次结构,共分为4层。  (应用层  传输层  )

      各层实现特定的功能,提供特定的服务和访问接口,并具有相对的独立性。

  2. TCP 与 UDP协议

      在网络协议栈中,有两个高级协议是 网络应用程序编写者 应该了解的,分别是:

          传输控制协议(TCP)  ——  适合可靠性要求比较高的场合 (HTTP、FTP和Telnet都需要)

          用户数据包协议(UDP) ——  无连接通信协议 (可向若干目标发送数据,可接收……)

TCP 3次握手 必须有服务器(必须先由客户端发给服务器,因为服务器不知道客户端在哪)
好处:安全、稳定(只有3次握手成功了才会进行通信) 缺点:效率要低一些(3次握手需要时间,所以慢一些)
UDP 特点:快速、效率高,但是不稳定,容易发生数据丢失(我客户端不管你服务器有空没空来处理数据,我就是给你发)
用于视频传输  

  3. POP3 协议

      POP 协议用于电子邮件的接收。

      通过POP3协议,客户机登录到服务器后,可以对自己的邮件进行删除,或是下载到本地。

      POP3 常用命令……

 24.1.3 端口及套接字

    网络程序设计中的端口(Port)并非真实的物理存在,而是一个假想的连接装置。

    端口被规定为一个在 0~65535之间的整数。

    HTTP服务一般使用 80 端口,FTP服务使用 21 端口。

        0 ~ 1023 之间的端口号通常用于一些比较知名的网络服务和应用。

        普通网络应用程序则应该使用 1024 以上的端口号,以避免该端口号被另一个应用或系统服务所用。

    网络程序中的套接字(Socket)用于将应用程序与端口连接起来。

    C#将套接字抽象化为类,程序设计者只需创建 Socket 类对象,即可使用套接字。