- 1、本文档共88页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
TCP(IP)协议和网络编程
*;Overview;课程目标
预备知识
目标听众
日程表
词汇表
;了解计算机网络的构成
了解OSI七层网络模型
了解TCP/IP网络模型
理解SOCKET
能使用SOCKET进行网络编程;C++语言基础
对计算机网络以及网络编程有一定了解;程序员;共计:0.5天
详细安排
;OSI-Open System Interconnection
TCP/IP-Transmission Control Protocol / Internet Protocol
SOCKET-套接字;Overview;计算机网络是指将有独立功能的多台计算机,通过通信设备线路连接起来,在网络软件的支持下,实现彼此之间资源共享和数据通信的整个系统。 ;计算机网络的基本功能是数据通信和资源共享。 ;按照覆盖范围可分为:
局域网
城域网
广域网
按照介质课分为:
有线网络
无线网络
微波网络
问题:校园网属于什么网络?
;A;IP网络中每台主机都必须有一个惟一的IP地址;
IP地址是一个逻辑地址;
因特网上的IP地址具有全球唯一性;
32位,4个字节,常???点分十进制的格式表示,例如:6
;为进行网络中的数据交换(通信)而建立的规则、标准或约定。(=语义+语法+规则)
不同层具有各自不同的协议。;多种通信媒介——有线、无线……
不同种类的设备——通用、专用……
不同的操作系统——Unix、Windows ……
不同的应用环境——固定、移动……
不同业务种类——分时、交互、实时……
用户业务的延续性——不允许出现大的跌宕起伏。
他们相互交织,构成了非常复杂的网络环境;网络体系结构解决异质性问题采用的是分层方法 —— 把复杂的网络互联问题划分为若干个较小的、单一的问题,在不同层上予以解决。;Overview;OSI(Open System Interconnection)参考模型将网络的不同功能划分为7层。;通信实体的对等层之间不允许直接通信。
各层之间是严格单向依赖。
上层使用下层提供的服务 — Service user;
下层向上层提供服务 — Service provider。;网络对等通信示例;对等层实体之间虚拟通信。
下层向上层提供服务,实际通信在最底层完成。;应用层:
远程登录协议Telnet
文件传输协议FTP
超文本传输协议HTTP
域名服务DNS
简单邮件传输协议SMTP
邮局协议POP3;传输层:
传输控制协议TCP:面向连接的可靠的传输协议
用户数据报协议UDP:是无连接的,不可靠的传输协议;网络层:
网际协议IP
Internet互联网控制报文协议ICMP
Internet组管理协议IGMP;一台计算机要发送数据到另一台计算机,数据首先必须打包,打包的过程称为封装。
封装就是在数据前面加上特定的协议头部。;OSI参考模型中,对等层协议之间交换的信息单元统称为协议数据单元(PDU,Protocol Data Unit)。
OSI参考模型中每一层都要依靠下一层提供的服务。
为了提供服务,下层把上层的PDU作为本层的数据封装,然后加入本层的头部(和尾部)。头部中含有完成数据传输所需的控制信息。;数据自上而下递交的过程实际上就是不断封装的过程。到达目的地后自下而上递交的过程就是不断拆封的过程。由此可知,在物理线路上传输的数据,其外面实际上被包封了多层“信封”。
某一层只能识别由对等层封装的“信封”,而对于被封装在“信封”内部的数据仅仅是拆封后将其提交给上层,本层不作任何处理。
;Overview;TCP/IP起源于美国国防部高级研究规划署(DARPA)的一项研究计划——实现若干台主机的相互通信。
现在TCP/IP已成为Internet上通信的工业标准。;TCP/IP模型包括4个层次:
应用层
传输层
网络层
网络接口;TCP/IP与OSI的对应关系;按照OSI七层模型的描述,传输层提供进程(应用程序)通信的能力。为 了标识通信实体中进行通信的进程(应用程序),TCP/IP协议提出了协议端口(protocol port,简称端口)的概念。
端口是一种抽象的软件结构。应用程序通过系统调用与某端口建立连接(binding)后,传输层传给该端口的数据都被相应的进程所接收,相应进程发给传输层的数据都通过该端口输出。;端口用一个整数型标识符来表示,即端口号。端口号跟协议相关,TCP/IP传输层的两个协议TCP和UDP是完全独立的两个软件模块,因此各自的端口号也相互独立。
端口使用一个16位的数字来表示,它的范围是0~65535,1024以下的端口号保留给预定义的服务。例如:http使用80端口。;Overview;我们开发网络应用程序是否需要我们手工的去封装我们需要传输的数据?;为了能够方便的开发网络应用软件,由美国伯克利大学在Unix上推出了一种应用程
文档评论(0)