c语言 sock 编程 pdf,c socket编程详解.pdf

c socket编程详解

第1 章 Visual C++网络编程概述

Visual C++ VC MFC

(后面简写为 )网络编程是指用户使用 类库 (微软基础类

库)在VC编译器中编写程序,以实现网络应用。用户通过VC编程实现的网

络软件可以在网络中不同的计算机之间互传文件、图像等信息。本章将向用户

介绍基于Windows操作系统的网络编程基础知识,其开发环境是VC。在VC

编译器中,使用WindowsSocket进行网络程序开发是网络编程中非常重要的一

部分。

1.1 网络基础知识

如果用户要进行VC 网络编程,则必须首先了解计算机网络通信的基本框

架和工作原理。在两台或多台计算机之间进行网络通信时,其通信的双方还必

须遵循相同的通信原则和数据格式。本节将向用户介绍OSI七层网络模型、

TCP/IP协议以及C/S编程模型。

1.1.1 OSI七层网络模型

OSI 网络模型是一个开放式系统互联的参考模型。通过这个参考模型,用户

可以非常直观地了解网络通信的基本过程和原理。OSI参考模型如图1.1所示。

图1.1 OSI七层网络模型

用户从OSI 网络模型可以很直观地看到,网络数据从发送方到达接收方的

过程中,数据的流向以及经过的通信层和相应的通信协议。事实上在网络通信

的发送端,其通信数据每到一个通信层,都会被该层协议在数据中添加一个包

头数据。而在接收方恰好相反,数据通过每一层时都会被该层协议剥去相应的

包头数据。用户也可以这样理解,即网络模型中的各层都是对等通信。在OSI

七层网络模型中,各个网络层都具有各自的功能,如表1.1所示。

表1.1 各网络层的功能

协议层名 功能概述

物理硬件层 表示计算机网络中的物理设备。常见的有计算机网卡等

数据链路层 将传输数据进行压缩与加压缩

网络层 将传输数据进行网络传输

数据传输层 进行信息的网络传输

会话层 建立物理网络的连接

表示层 将传输数据以某种格式进行表示

应用层 应用程序接口

注意:在表 1.1 中列出了OSI 七层网络模型中各层的基本功能概述。用户根据这些基本

的功能概述会对该网络模型有一个比较全面的认识。

1.1.2 TCP/IP协议

TCP/IP协议实际上是一个协议簇,其包括了很

多协议。例如,FTP (文本传输协议)、SMTP (邮

件传输协议)等应用层协议。TCP/IP协议的网络模

型只有4层,包括数据链路层、网络层、数据传输

图1.2 TCP/IP 网络协议模型

层和应用层,如图1.2所示。

在TCP/IP 网络编程模型中,各层的功能如表1.2所示。

表1.2 TCP/IP网络协议各层功能

协议层名 功能概述

数据链路层 网卡等网络硬件设备以及驱动程序

网络层 IP协议等互联协议

数据传输层 为应用程序提供通信方法,通常为TCP、UDP协议

应用层 负责处理应用程序的实际用于层协议

在数据传输层中,包括了TCP和UDP协议。其中,TCP协议是基于面向连

接的可靠的通信协议。其具有重发机制,即当数据被破坏或者丢失时,发送方

将重发该数据。而UDP协议是基于用户数据报协议,属于不可靠连接通

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值