《Linux高级系统编程》教学教案—07Linux网络编程概述

上传人:sat****105 文档编号:290121314 上传时间:2022-05-09 格式:DOC 页数:4 大小:164.50KB
返回 下载 相关 举报
《Linux高级系统编程》教学教案—07Linux网络编程概述_第1页
第1页 / 共4页
《Linux高级系统编程》教学教案—07Linux网络编程概述_第2页
第2页 / 共4页
《Linux高级系统编程》教学教案—07Linux网络编程概述_第3页
第3页 / 共4页
《Linux高级系统编程》教学教案—07Linux网络编程概述_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《《Linux高级系统编程》教学教案—07Linux网络编程概述》由会员分享,可在线阅读,更多相关《《Linux高级系统编程》教学教案—07Linux网络编程概述(4页珍藏版)》请在金锄头文库上搜索。

1、 Linux高级系统编程教学设计课程名称: Linux高级系统编程_授课年级: _授课学期: _教师姓名: _ 课程名称第7章 Linux网络编程概述计划学时 学时内容分析本章主要介绍网络概述、网络基础知识教学目标与教学要求要求学生了解计算机网络的发展史、掌握网络体系结构OSI参考、TCP/IP模型的使用方法、掌握网络协议、网络端口、IP地址、子网掩码的使用方法、掌握TCP和UDP的使用方法教学重点网络概述、网络基础知识教学难点网络概述、网络基础知识教学方式课堂讲解及ppt演示教学过程第一课时(网络概述、网络基础知识)内容回顾1. 回顾上节内容,引出本课时主题。本章将开始介绍有关网络编程的概念

2、知识。通过学习本章内容,为后续Linux网络编程奠定基础。本章首先介绍计算机网络的模型,即网络协议分层,旨在帮助读者对网络建立初步的、全面立体的认识,其次介绍与网络相关的一些基本概念,包括协议、端口、地址等;最后介绍应用非常广泛的传输控制协议(Transmission Control Protocol,TCP)和用户数据报协议(User Datagram Protocol,UDP)的基本概念及其区别。从而引出本节的内容。2. 明确学习目标(1) 能够掌握Internet的历史(2) 能够掌握网络体系结构(3) 能够掌握TCP/IP协议族体系结构(4) 能够掌握TCP/IP模型特点(5) 能够掌

3、握TCP与UDP(6) 能够掌握套接字知识讲解 Internet的历史互联网(Internet)又称为网际网络,或因特网,是网络与网络之间串联成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一且巨大的全球化网络,在这个网络中有交换机、路由器等网络设备,各种不同的连接链路、种类繁多的服务器和数不尽的计算机、终端。使用互联网可以将信息瞬间发送到千里之外的人手中,它是信息社会的基础。1958年,美国总统艾森豪威尔向美国国会提出建立国防部高级研究计划署(Defense Advanced Research Project Agency,DARPA),简称ARPA。1968年6月ARPA提出“资

4、源共享计算机网络”(Resource Sharing Computer Networks),目的是让ARPA的所有计算机互联起来,这个网络就叫作ARPAnet(阿帕网),是Internet的最早雏形。早期的ARPAnet使用网络控制协议(Network Control Protocol,NCP),不能互联不同类型的计算机和不同类型的操作系统,没有纠错功能。1973年,由罗伯特卡恩(Robert Kahn)和文顿瑟夫(Vinton Cerf)两人合作为ARPAnet开发了新的互联协议。1974年,两人正式发表第一份TCP详细说明,此协议在数据包丢失时不能有效的纠正。TCP分成了两个不同的协议:用

5、来检测网络传输中差错的传输控制协议(TCP);专门负责对不同网络进行互联的互联网协议(IP)。至1983年,ARPAnet上停止使用NCP,互联网上的主机全部使用TCP/IP协议。TCP/IP协议称为了Internet的“世界语”。 网络体系结构网络体系结构指的是网络的分层结构和每层所使用协议的集合。通俗地说,网络体系结构采用分而治之的方法设计,将网络的功能划分为不同的模块,以分层的形式有机组合在一起。每层实现的不同的功能。其内部实现方法对外部其他层次来说是透明的。每层向上层提供服务,同时使用下层提供的服务。这其中最著名的体系结构为OSI协议参考模型。开放式系统互联(Open System I

6、nterconnection,OSI)基于国际标准化组织(Internation Organization for Standardization,ISO)的建议发展起来的。该模型定义了不同计算机互联的标准,是设计和描述计算机网络通信的基本框架。OSI参考模型把网络通信的工作分为7层,即物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。这个7层的协议模型规定得非常细致和完善。但在实际中没有被广泛地应用,其重要的原因是它过于复杂。尽管如此,它仍然是此后很多协议模型的基础。OSI参考模型如图所示。 TCP/IP协议族体系结构OSI参考模型作为网络体系结构的参考模型,为很多协议模型提供了参

7、考。其中与其有所区别的TCP/IP模型则十分重要。TCP/IP模型将OSI的7层协议模型简化为4层,从而更有利于实现和高效通信。OSI参考模型与TCP/IP参考模型的对应关系如图所示。 特别需要注意的是,TCP/IP(Transmission Control Protocol/Internet Protocol)中译名为传输控制协议/因特网互联协议。但通常情况下,TCP/IP指的是一个协议族,由一组专业化的协议组成。这些协议包括IP、TCP、UDP、ARP(Transmission Control Protocol/Internet Protocol,地址解析协议)、ICMP(Internet

8、 Control Message Protocol互联网控制信息协议)、SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)、SNMP(Simple Network Management Protocol,简单网络管理协议)、HTTP(Hypertext Transfer Procotol,超文本传输协议)、FTP(File Tranfer Procotol,文件传输协议)等其他一些被称为子协议的协议。这些协议分别属于TCP/IP协议中的4个不同层级,如图所示。 TCP/IP是Internet最基本的协议,它是Internet国际互联网络的基础。TCP/IP

9、定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议采用了4层层级结构,每一层都呼叫它的下一层所提供的协议来完成自己的需求。下面将具体讲解各层在TCP/IP整体架构中的作用。(1)网络接口层(有时也可称为链路层)是TCP/IP的最底层,负责将二进制流转换为数据帧,并进行数据帧的发送和接收。数据帧是网络传输的基本单元。(2)网络层负责在主机之间的通信中选择数据包的传输路径,即路由。当网络层接收到传输层的请求后,传输某个具有目的地址信息的分组。该层把分组封装在IP数据包中,填入数据包的首部,使用路由算法来确定是直接交付数据包,还是把它传递给路由器,最后把数据包交给适当的网络接口进行

10、传输。网络层同时负责处理传入的数据包。检验其有效性,使用路由算法来决定应该对数据包进行本地处理还是转发。如果数据包目的机处于本机所在的网络,该层软件就会除去数据包的首部,再进行适当的传输层协议来处理这个分组。最后,网络层还要根据需要发出和接收ICMP差错和控制报文。(3)传输层负责实现应用程序之间的通信服务,这种通信又称为端到端通信。传输层要系统地管理信息的流动。还要提供可靠的传输服务。以确保数据到达无差错、无秩序。为了达到这个目的,传输层协议软件要进行协商,让接收方回送确认信息及让发送方重发丢失的分组。传输层协议软件把要传输的数据流划分为分组,把每个分组连同目的地址交给网络层去发送。(4)应

11、用层是分层模型的最高层。应用程序使用相应的应用层协议,把封装好的数据提交给传输层或是从传输层接收数据并处理。综上可知,TCP/IP分层模型每一层负责不同的通信功能,互相协作,完成网络传输要求。 TCP/IP模型特点TCP/IP是目前Internet上使用最广泛的互联协议,下面简单介绍其特点。(1)TCP/IP模型边界特性。TCP/IP分层模型中有两大边界特性:一个是地址边界特性,它将IP逻辑地址与底层网络的硬件地址分开;另一个是操作系统边界特性,它将网络应用与协议软件分开,如图所示。 TCP/IP分层模型边界特性是指在模型中存在一个地址上的边界,它将底层网络的物理地址与网络层的IP地址分开。该

12、边界出现在网络层与网络接口层之间。网络层和其上的各层均使用IP地址,网络接口层则使用物理地址,即底层网络设备的硬件地址。TCP/IP提供在两种地址之间进行映射的功能。划分地址边界的目的是为了屏蔽底层物理网络的地址细节,以便使网络软件地址上易于实现和理解。影响操作系统边界划分的最重要因素是协议的效率问题,在操作系统内部实现的协议软件,其数据传递的效率明显要高。(2)IP层特性。IP层作为通信子网的最高层,提供无连接的数据包传输机制,但IP协议并不能保证IP包传递的可靠性。TCP/IP设计原则之一是为包容各种物理网络技术,包容性主要体现在IP层中。各种物理网络技术在帧或包格式、地址格式等方面差别很

13、大,TCP/IP的重要思想之一就是通过IP层将各种底层网络技术统一起来,达到屏蔽底层细节,提供统一虚拟网的目的。IP层向上层提供统一的IP包,使得各种网络帧或包格式的差异性对高层协议不复存在。IP层是TCP/IP实现异构网互联最关键的一层。(3)TCP/IP的可靠性特性。在TCP/IP网络中,IP层采用无连接的数据包机制,即只管将数据包尽力传送到目的主机,无论传输正确与否,不做验证,不发确认,也不保证数据包的顺序。TCP/IP的可靠性体现在传输层协议之一的TCP。TCP提供面向连接的服务,因为传输层是端到端的,所以TCP/IP的可靠性被称为端到端可靠性。综上可知,TCP/IP的特点就是将不同的

14、底层物理网络、拓扑结构隐藏起来,向用户和应用程序提供通用、统一的网络服务。这样,从用户的角度看,整个TCP/IP网络就是一个统一的整体,它独立于具体的各种物理网络技术,能够向用户提供一个通用的网络服务。 TCP与UDP本节将简单阐述TCP(传输控制协议)和UDP(用户数据报协议)的区别,二者工作原理及编程实现在后续章节中将会详述。(1)相同点。二者同为传输层协议。(2)不同点。TCP是一种面向连接的传输层协议,它能提供高可靠性通信(数据无误、数据无丢失、数据无失序、数据无重复到达的通信)。TCP适用于对传输质量要求较高,以及传输大量数据的通信;在需要可靠数据传输的场合,通常使用TCP。常见使用

15、TCP协议的应用有浏览器等。TCP优点是可靠。稳定的TCP的可靠性体现在TCP在传输数据之前,会有三次握手来建立连接,而且在数据传递时,有确认、窗口、重传机制、阻塞控制机制,在数据传完后,还会断开连接,以节约系统资源。TCP缺点也很明显。具体包括传输慢,效率低,占用系统资源高以及易被攻击。TCP在传输数据之前,要先建立连接,这会消耗时间,而且在数据传递时,确认机制、重传机制、阻塞控制机制等会消耗大量时间。UDP是一种不可靠的无连接的协议。因为不需要连接,所以可以进行高效率的数据传输。UDP适用于对网络通信质量要求不高,网络通信讯速度尽量快的通信。常见的UDP的应用有QQ语音、QQ视频等。UDP的优点是快,比TCP稍安全,UDP没有TCP的握手机制、确认机制、窗口、重传机制、阻塞等控制机制,没有TCP的这些机制,UDP较TCP被攻击者利用的漏洞就要少一些。UDP的缺点是不可靠,不稳定。在数据传输时,如果网络质量不好,就会容易丢包。 套接字套接字(socket)最早是由BSD在1982年引入的通信机制,目前已被广泛移植到主流的操作系统中。对于应用开发人员来说,套接字是

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号