【Mark】C#网络应用编程

网络应用编程入门知识

  • 本章介绍网络应用编程所需的基本知识
    包括开发环境、开发模型、网络通信模式、网络协议、IP地址转换、域名解析以及网卡信息检测等;

20.2.19

  • 流行模式
    C/S,Client / Server,客户端 / 服务器;
    P2P,客户端和服务器都有,效率更高一些;
    B/S,Browser / Server,浏览器 / 服务器;
  • WPFWCF 为主要基础,知识架构:
    在这里插入图片描述
  • 网络的两个含义:
    1.互联网 (Internet);
    2.企业内部网 (Intranet),将企业内部网和外部网络通过防火墙有效隔离;
  • 数据通信模型
    1.分散式 (Decentralized) ,早已被淘汰;
    2.集中式 (Centralized),终端不处理信息,所有数据、运作、管理都由主机控制;
    3.分布式 (Distributed),分散式和集中式的混合体,与计算机网络的主要区别是软件而非硬件;
    现在企业管理系统一般是分布式 + 集中式的综合;
  • C/S 模式,又叫 C/S 架构,又叫 C/S 模型
    胖客户端应用程序编程架构,主要工作在客户端;
    将一个网络事务处理分为两部分,客户端、服务端;
    面向服务的体系架构 (SOA),WCF 是其中一种具体实现技术;
    WCF 编写服务端应用程序;
    WPF 编写客户端应用程序;
  • B/S模式,仅使用 HTTP 进行通信;
    采用三层架构设计,用户界面、逻辑处理和数据支持;
    B/S 模式的应用程序也称为 Web 应用程序
    优点,单台计算机可以访问任何 web 服务器; (只需知道服务器的网址(IP 地址或域名));

20.2.25

  • 网络协议 (network protocol),简称协议,为数据交换建立的规则;
    HTTP,超文本传输协议,是TCP协议族的一员;是应用层协议;
    TCP,传输控制协议;在传输层;UDP,用户数据报协议;
  • TCP,使用面向连接的套接字;在正式通信前必须要与对方建立起连接;
    UDP,使用无连接的;不提供可靠性保证,用数据包;
    链接:TCP、UDP和HTTP区别详解.
  • 计算机网络体系结构 (architecture),OSI 的七层协议、TCP/IP 的四层、还有个五层协议;
    为什么要分层?分层细化是一种化繁为简的通用方法;
  • TCP/IP 的四层:
    应用层,负责应用程序之间的沟通,SMTP、FTP、Telnet;
    传输层,负责节点间数据传送,及应用程序间通信服务,TCP、UDP;端口号是其服务接入点;
    网际层,负责给数据报最佳路径,核心协议 IP,其他 ICMP、ARP;
    网络接口层,负责接收数据报并进行传输;数据报,简单理解为“生成报告后的数据”;
  • 套接字,socket
    链接:第14章的网络编程.

20.2.26

  • 一个 IP 地址由两部分组成,网络号 + 主机号
    IPv4 编址方案,4个字节,点分十进制;
    IPv6 编址方案,16个字节,冒号分隔;
  • 子网掩码,用于屏蔽 IP 地址的一部分,以区别网络标识和主机标识;
    把所有的网络用1来标识,主机位用0来标识;例如:255.255.255.0 前三个字节就对应网络号;
  • 端口,物理意义上的端口是实际的接口;逻辑意义上的端口是进程标识
  • IP 地址转换相关类,命名空间 System.Net;
    IPAddress 类提供网络协议 IP 地址
    Parse 方法,将 IP 地址字符串转换为其实例;(静态工厂方法)
    AddressFamily 属性,判断是 IPv4 还是 IPv6;
    IPEndPoint 类包含 IP 地址和端口号
    public IPEndPoint(IPAddress address, int port);
    IPHostEntry 类为主机提供信息容器
    Dns.GetHostEntry() 获得其对象;其实例包含主机相关信息;
    AddressList 属性,IP 地址列表;
    HostName 属性,包含指定主机名;
  • IP 地址不易记,通过 字符型地址(域名,Domain Name) 记;
    DNS (Domain Name System 域名系统),可将域名和IP地址相互转换;
    Dns 类提供了方便的域名解析功能,即很多静态方法:
    GetHostAddresses(String); GetHostEntry(String); GetHostName();
  • MAC 地址,物理地址;
  • 网络适配器,又称网卡 (NIC),是连接计算机与网络的硬件设备;
    NetworkInterface 类检测网卡的配置和统计信息GetAllNetworkInterfaces();
    IPInterfaceProperties 类检测网卡支持的各种地址;抽象类;networkInterface.GetIPProperites();
  • 网络流量检测相关类:IPGlobalProperties 类
  • 链接:第一章_代码实现.
发布了77 篇原创文章 · 获赞 160 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_43763494/article/details/104388387
今日推荐