TCPIP协议与网络编程

上传人:飞*** 文档编号:2685157 上传时间:2017-08-08 格式:PPT 页数:88 大小:621.50KB
返回 下载 相关 举报
TCPIP协议与网络编程_第1页
第1页 / 共88页
TCPIP协议与网络编程_第2页
第2页 / 共88页
TCPIP协议与网络编程_第3页
第3页 / 共88页
TCPIP协议与网络编程_第4页
第4页 / 共88页
TCPIP协议与网络编程_第5页
第5页 / 共88页
点击查看更多>>
资源描述

《TCPIP协议与网络编程》由会员分享,可在线阅读,更多相关《TCPIP协议与网络编程(88页珍藏版)》请在金锄头文库上搜索。

1、*TCP/IP协议与网络编程Version1.02010年 6月2017/8/8Overviewn 课程介绍n 计算机网络简介n OSI七层参考模型n TCP/IP模型n SOCKET介绍n 基于 TCP的 SOCKET编程n 基于 UDP的 SOCKET编程n 参考资料 Date 2n 课程目标n 预备知识n 目标听众n 日程表n 词汇表课程介绍Date 3n 了解计算机网络的构成n 了解 OSI七层网络模型n 了解 TCP/IP网络模型n 理解 SOCKETn 能使用 SOCKET进行网络编程课程目标Date 4n C+语言基础n 对计算机网络以及网络编程有一定了解预备知识Date 5n

2、程序员目标听众Date 6n 共计: 0.5天n 详细安排课 程介 绍计 算机网 络简 介OSI七 层 网 络 模型介 绍TCP/IP网 络 模型介 绍SOCKET介 绍TCP编 程UDP编 程Total: hours日程表Date 7n OSI-OpenSystemInterconnectionn TCP/IP-TransmissionControlProtocol/InternetProtocoln SOCKET-套接字词汇表Date 8Overviewn 课程介绍n 计算机网络简介n OSI七层参考模型n TCP/IP模型n SOCKET介绍n 基于 TCP的 SOCKET编程n 基于

3、UDP的 SOCKET编程n 参考资料 Date 9n 计算机网络是指将有独立功能的多台计算机,通过通信设备线路连接起来,在网络软件的支持下,实现彼此之间资源共享和数据通信的整个系统。 什么是计算机网络?Date 10n 计算机网络的基本功能是数据通信和资源共享。 计算机网络的基本功能Date 11n 按照覆盖范围可分为:l 局域网l 城域网l 广域网n 按照介质课分为:l 有线网络l 无线网络l 微波网络n 问题:校园网属于什么网络?计算机网络的分类Date 12A B网络192.168.0.118 192.168.0.10协议 协议端口号端口号计算机网络如何进行通信Date 13n IP网

4、络中每台主机都必须有一个惟一的 IP地址;n IP地址是一个逻辑地址;n 因特网上的 IP地址具有全球唯一性;n 32位, 4个字节,常用点分十进制的格式表示,例如: 192.168.0.16IP地址Date 14n 为进行网络中的数据交换(通信)而建立的规则、标准或约定。 (=语义 +语法 +规则 )n 不同层具有各自不同的协议。协议Date 15n 多种通信媒介 有线、无线 n 不同种类的设备 通用、专用 n 不同的操作系统 Unix 、 Windowsn 不同的应用环境 固定、移动 n 不同业务种类 分时、交互、实时 n 用户业务的延续性 不允许出现大的跌宕起伏。他们相互交织,构成了非常

5、复杂的网络环境网络异质性Date 16n 网络体系结构解决异质性问题采用的是分层方法 把复杂的网络互联问题划分为若干个较小的、单一的问题,在不同层上予以解决。网络异质性的解决Date 17Overviewn 课程介绍n 计算机网络简介n OSI七层参考模型n TCP/IP模型n SOCKET介绍n 基于 TCP的 SOCKET编程n 基于 UDP的 SOCKET编程n 参考资料 Date 18n OSI(OpenSystemInterconnection)参考模型将网络的不同功能划分为 7层。OSI七层参考模型应用层表示层物理层会话层传输层网络层数据链路层处理网络应用数据表示主机间通信端到端的

6、连接寻址和最短路径介质访问 (接入 )二进制传输Date 19n 通信实体的对等层之间不允许直接通信。n 各层之间是严格单向依赖。n 上层使用下层提供的服务 Serviceuser;n 下层向上层提供服务 Serviceprovider。OSI七层参考模型Date 20网络对等通信示例我们是朋友We are friend传真中国人翻译秘书私友 We are friend传真日本人翻译秘书对交谈内容的共识用英语对话使用传真通信物理通信线路Date 21n 对等层实体之间虚拟通信。n 下层向上层提供服务,实际通信在最底层完成。网络对等通信的实质Date 22n 应用层:l 远程登录协议 Telne

7、tl 文件传输协议 FTPl 超文本传输协议 HTTPl 域名服务 DNSl 简单邮件传输协议 SMTPl 邮局协议 POP3OSI各层使用协议简介Date 23n 传输层:l 传输控制协议 TCP:面向连接的可靠的传输协议l 用户数据报协议 UDP:是无连接的,不可靠的传输协议OSI各层使用协议简介Date 24n 网络层:l 网际协议 IPl Internet互联网控制报文协议 ICMPl Internet组管理协议 IGMPOSI各层使用协议简介Date 25n 一台计算机要发送数据到另一台计算机,数据首先必须打包,打包的过程称为封装。n 封装就是在数据前面加上特定的协议头部。数据封装数

8、据数据协议头Date 26n OSI参考模型中,对等层协议之间交换的信息单元统称为协议数据单元 (PDU, ProtocolDataUnit)。n OSI参考模型中每一层都要依靠下一层提供的服务。n 为了提供服务,下层把上层的 PDU作为本层的数据封装,然后加入本层的头部(和尾部)。头部中含有完成数据传输所需的控制信息。数据封装Date 27n 数据自上而下递交的过程实际上就是不断封装的过程。到达目的地后自下而上递交的过程就是不断拆封的过程。由此可知,在物理线路上传输的数据,其外面实际上被包封了多层 “信封 ”。n 某一层只能识别由对等层封装的 “信封 ”,而对于被封装在 “信封 ”内部的数据

9、仅仅是拆封后将其提交给上层,本层不作任何处理。数据封装Date 28Overviewn 课程介绍n 计算机网络简介n OSI七层参考模型n TCP/IP模型n SOCKET介绍n 基于 TCP的 SOCKET编程n 基于 UDP的 SOCKET编程n 参考资料 Date 29n TCP/IP起源于美国国防部高级研究规划署(DARPA)的一项研究计划 实现若干台主机的相互通信。n 现在 TCP/IP已成为 Internet上通信的工业标准。TCP/IP模型Date 30n TCP/IP模型包括 4个层次:l 应用层l 传输层l 网络层l 网络接口TCP/IP模型的分层Date 31TCP/IP与

10、 OSI的对应关系应用层表示层会话层传输层物理层数据链路层网络层7654321OSI参考模型应用层传输层网络接口网络层TCP/IP模型Date 32n 按照 OSI七层模型的描述,传输层提供进程(应用程序)通信的能力。为 了标识通信实体中进行通信的进程(应用程序), TCP/IP协议提出了协议端口( protocolport,简称端口)的概念。n 端口是一种抽象的软件结构。应用程序通过系统调用与某端口建立连接( binding)后,传输层传给该端口的数据都被相应的进程所接收,相应进程发给传输层的数据都通过该端口输出。端口Date 33n 端口用一个整数型标识符来表示,即端口号。端口号跟协议相关

11、, TCP/IP传输层的两个协议 TCP和 UDP是完全独立的两个软件模块,因此各自的端口号也相互独立。n 端口使用一个 16位的数字来表示,它的范围是 065535, 1024以下的端口号保留给预定义的服务。例如: http使用 80端口。端口Date 34Overviewn 课程介绍n 计算机网络简介n OSI七层参考模型n TCP/IP模型n SOCKET介绍n 基于 TCP的 SOCKET编程n 基于 UDP的 SOCKET编程n 参考资料 Date 35n 我们开发网络应用程序是否需要我们手工的去封装我们需要传输的数据?如何开发网络应用程序Date 36n 为了能够方便的开发网络应用

12、软件,由美国伯克利大学在 Unix上推出了一种应用程序访问通信协议的操作系统调用 socket(套接字 )。 socket的出现,使程序员可以很方便地访问 TCP/IP,从而开发各种网络应用的程序。SOCKET-套接字的引入Date 37n 随着 Unix的应用推广,套接字在编写网络软件中得到了极大的普及。后来,套接字又被引进了 Windows等操作系统,成为开发网络应用程序的非常有效快捷的工具。SOCKET-套接字的引入Date 38n 套接字存在于通信区域中。通信区域也叫地址族,它是一个抽象的概念,主要用于将通过套接字通信的进程的共有特性综合在一起。套接字通常只与同一区域的套接字交换数据(

13、也有可能跨区域通信,但这只在执行了某种转换进程后才能实现)。 WindowsSockets只支持一个通信区域:网际域 (AF_INET),这个域被使用网际协议簇通信的进程使用。SOCKET-套接字的引入Date 39n 在 TCP/IP网络应用中,通信的两个进程间相互作用的主要模式是客户机 /服务器模式(client/server),即客户向服务器提出请求,服务器接收到请求后,提供相应的服务。客户机 /服务器模式Date 40n 客户机 /服务器模式的建立基于以下两点:l 首先,建立网络的起因是网络中软硬件资源、运算能力和信息不均等,需要共享,从而造就拥有众多资源的主机提供服务,资源较少的客户

14、请求服务这一非对等作用。l 其次,网间进程通信完全是异步的,相互通信的进程间既不存在父子关系,又不共享内存缓冲区,因此需要一种机制为希望通信的进程间建立联系,为二者的数据交换提供同步,这就是基于客户机 /服务器模式的 TCP/IP。客户机 /服务器模式Date 41n 客户机 /服务器模式在操作过程中采取的是主动请求的方式。n 服务器端:l 首先服务器方要先启动,并根据请求提供相应的服务:l 打开一个通信通道并告知本地主机,它愿意在某一地址和端口上接收客户请求。l 等待客户请求到达该端口。l 接收到重复服务请求,处理该请求并发送应答信号。接收到并发服务请求,要激活一个新的进程 (或线程 )来处

15、理这个客户请求。新进程 (或线程 )处理此客户请求,并不需要对其它请求作出应答。服务完成后,关闭此新进程与客户的通信链路,并终止。l 返回第二步,等待另一客户请求。l 关闭服务器。客户机 /服务器模式Date 42n 客户方:l 打开一个通信通道,并连接到服务器所在主机的特定端口。l 向服务器发服务请求报文,等待并接收应答;继续提出请求。l 请求结束后关闭通信通道并终止。客户机 /服务器模式Date 43n WindowsSockets是 MicrosoftWindows的网络程序设计接口,它是从 BerkeleySockets扩展而来的,以动态链接库的形式提供给我们使用。 WindowsSockets在继承了 BerkeleySockets主要特征的基础上,又对它进行了重要扩充。这些扩充主要是提供了一些异步函数,并增加了符合Windows消息驱动特性的网络事件异步选择机制。Windows Socket的实现Date 44n WindowsSockets1.1和 BerkeleySockets都是基于 TCP/IP协议的;WindowsSockets2从 Windows

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

当前位置:首页 > 行业资料 > 其它行业文档

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