第1章 Visual C++网络编程概述 Visual C++(后面简写为VC)网络编程是指用户使用MFC 类库(微软基础类库)在VC 编译器中编写程序,以实现网络应用
用户通过VC 编程实现的网络软件可以在网络中不同的计算机之间互传文件、图像等信息
本章将向用户介绍基于 Window s 操作系统的网络编程基础知识,其开发环境是VC
在VC编译器中,使用Window s Socket 进行网络程序开发是网络编程中非常重要的一部分
1 网络基础知识 如果用户要进行 VC 网络编程,则必须首先了解计算机网络通信的基本框架和工作原理
在两台或多台计算机之间进行网络通信时,其通信的双方还必须遵循相同的通信原则和数据格式
本节将向用户介绍 OSI 七层网络模型、TCP/IP 协议以及 C/S 编程模型
1 OSI 七层网络模型 OSI 网络模型是一个开放式系统互联的参考模型
通过这个参考模型,用户可以非常直观地了解网络通信的基本过程和原理
OSI 参考模型如图 1
1 OSI 七层网络模型 用户从 OSI 网络模型可以很直观地看到,网络数据从发送方到达接收方的过程中,数据的流向以及经过的通信层和相应的通信协议
事实上在网络通信的发送端,其通信数据每到一个通信层,都会被该层协议在数据中添加一个包头数据
而在接收方恰好相反,数据通过每一层时都会被该层协议剥去相应的包头数据
用户也可以这样理解,即网络模型中的各层都是对等通信
在OSI七层网络模型中,各个网络层都具有各自的功能,如表1
1 各网络层的功能 协 议 层 名 功 能 概 述 物理硬件层 表示计算机网络中的物理设备
常见的有计算机网卡等 数据链路层 将传输数据进行压缩与加压缩 网络层 将传输数据进行网络传输 数据传输层 进行信息的网络传输 会话层 建立物理网络的连接 表示层