- 1
- 0
- 约5.74千字
- 约 20页
- 2018-12-03 发布于广西
- 举报
第20章 通向世界的桥梁-网络编程 网络计算和分布式系统是今后计算机性能的发展方向,网络编程是一门内容很广的专题知识。本章将概要性地讲解网络编程的基本概念以及常见的网络编程实例,本章的主要内容如下。 TCP/IP协议:读者将学到TCP/IP协议的基本理论。 Windows Sockets基础:读者将学会Windows套接字的概念和进行相应的程序设计应该具备的理论知识。 B/S模式和C/S模式:读者将学会当今主流的两种网络系统架构以及这两者的区别和应用方向。 局域网技术:读者将学会在局域网内进行网络编程的一些程序设计技巧。 20.1 网络模型和通信简介 计算机网络并不是简单地将两台或多台计算机用网线连接起来就可以了,网络传输涉及到很多高科技的专业知识,如密码学、网络容错、虚拟网技术、自组网技术、P2P技术等,而且很多不同的应用都会涉及到多个专业领域,因此,网络传输和通信往往是一个复杂的过程。 20.1.1 TCP/IP协议模型和OSI七层参考模型 TC/IP协议模型和OSI七层参考模型是两种截然不同的协议模型,在互联网诞生初期,一些方便实现网络互连的协议已经被许多大的网络公司所发明并使用,而形成了行业内的默认协议模型,经过互联网理论和实践的结合,TCP/IP协议模型就诞生了,因此可以说TCP/IP协议模型是从实践中产生的理论。而OSI七层参考模型恰恰相反,它是基于抽象化的理论模型,并没有从实践应用中诞生,但理论上来说,OSI七层参考模型更具有优势。因此OSI七层参考模型一直都作为计算机网络理论界讨论的着手点,OSI七层参考模型的7个协议层是:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。如图20.1所示,该图所示是使用OSI的七层参考模型的A主机到B主机的数据传输。 在最初的网络应用中,网络协议并没有分得那么细致,TCP/IP协议模型从当时的应用实践出发,采用了4层的层级结构,每层的协议都是为上一层协议提供服务,并同时使用了下一层的协议,使得网络传输在不同的层次可以专注不同的事情,如在链路层可以专注于01码形式的帧数据传输、校验、纠错等,在网络层专注于寻找路由器的路由算法而不必再担心帧数据出错(因为在链路层已经校验并纠错了)。 20.1.2 网络数据的传输和封装过程 不管是TCP/IP协议层次还是OSI七层网络模型,都有一个分层的技术架构,网络为什么要分层?原因如下: 分层有利于分解网络软件的复杂度,使网络的底层向高层提供服务,而高层则只处理相应层次的事物,而不必过度关注细节问题。 分层也是为了统一规范,网络多端的设备要实现通信,而不同端的设备可能截然不同,因此要实现相互之间的通信,必须满足一定的协议规则,协议不能只用一个庞大复杂的协议,而应该按照网络层次将协议分为多层次,这样经过分层的协议只需要关注本层的职责即可。 20.2 Windows Sockets基础 在应用层进行网络编程,一般都要接触到套接字的概念。套接字(Sockets)是什么呢?如果换用电工专业的说法,套接字就是插座,要将一个台灯点亮,需要让这个台灯的插头插到通电的插座上,那么,这个插座就起到了套接字同样的作用。 网络通信也是一样的,在应用层协议中,需要有一个插座(套接字),将台灯(网络上的计算机A)和电源(网络上的服务器B)连接起来,使它们可以相互通信。 20.2.1 套接字概述 如果读者具备基本的电工知识,则会明白为什么自己买的插座和插头总是能配对,尽管插座和插头的生产厂家不同,反过来想,如果某生产厂家生产的插头与普通的插座不配对,它的插头还能卖出去吗?在网络程序中,不同计算机上的网络应用程序就相当于插头和插座的关系,一定要事先“协议”好一套规则,然后大家都按照这个规则做,这样生产的网络软件产品才能相互通信。 应用程序是在应用层的软件,因此应用软件需要使用传输层提供的服务,传输层协议TCP和UDP都会为多个应用程序的进程提供并发服务,而多个通信进程可能都会使用同一个TCP协议端口进行数据传输,为了区分不同的应用进程和连接事务,计算机操作系统非常有必要为应用程序和TCP/IP协议交互提供套接字的接口。 20.2.2 WinSock API常用函数详解 Visual C++提供了多种对网络编程的支持,主要有:Socket支持、WinInet支持、MAPI和ISAPI支持等。Windows Sockets规范定义了应用程序开发者能够使用,并且网络软件供应商能够实现的一套库函数调用和相关语义,基于Windows Sockets的应用开发中主要应用的是WinSock API编程。Windows Sockets API是Win32 API的一个子集,是在TCP/IP网络环境里,也是Internet上进行开发最为通用的API。 在网络通信环境中
您可能关注的文档
最近下载
- 关于层次分析法和灰色关联分析法的研究详解.doc VIP
- 高考一轮复习讲义第一讲学生 三角函数的概念同角三角函数关系式与诱导公式.doc VIP
- 高考数学 一轮复习讲义 任意角的三角函数.docx VIP
- 国际贸易实务实训教程.pdf VIP
- 高考数学 一轮复习讲义 -简单的三角恒等变换.docx VIP
- 如果要写年(带歌词完整版毛不易2024春晚歌曲) 高清钢琴谱五线谱.docx VIP
- 半边山半边海(原调版) 高清钢琴谱五线谱.docx VIP
- 下肢静脉血栓形成滤器术后护理.doc VIP
- 女性阻塞性睡眠呼吸暂停诊治专家共识 .pdf VIP
- 《我家是动物园》教案(2025—2026学年).docx VIP
原创力文档

文档评论(0)