- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
TCP/IP 概述 目的 完成本章的学习后您将能够: 描述TCP/IP 参考模型和OSI模型的区别与联系 了解TCP/IP传输层协议 了解TCP/IP网络层协议 理解 ICMP协议的功能 TCP/IP入门 历史悠久 良好的通用性 TCP/IP 协议族 应用层概述 传输层 传输层概述 TCP数据段的格式 端口号 TCP端口号 TCP用于建立连接的握手协议 TCP的简单确认机制 窗口大小 = 1(即一次发送一个数据段) TCP 滑动窗口法 TCP的序列号(Seq)和确认号(Ack) UDP 的数据段格式 没有序列号和确认号字段 互连网络层 网络层概述 OSI参考模型的网络层和 TCP/IP的互连网络层相当 IP数据包 IP 数据包(续) 协议字段 表示数据包封装的上层协议类型 Internet Control Message Protocol网间控制报文协议 ICMP测试 目的不可达包括 主机或端口不可达 网络不可达 ICMP 测试 (续) 使用ping 命令 地址解析协议 逻辑地址到物理地址的映射 本地ARP 反向地址解析RARP 用物理地址解析逻辑地址 小结 TCP/IP 协议栈包含以下一些内容: 支持 文件传输, e-mail, 远程访问, 和其他一些应用 带确认和不带确认的传输 支持网络层基于非连接的传输 ICMP 在网络层提供控制等信息功能 传输层主要负责两部分功能: 滑动窗口(slide windows)对流量进行控制 数据段的序列号和确认机制保证了数据传输的可靠性 传输层提供两种协议:TCP、UDP TCP是一种提供可靠的面向连接的传输层协议。它负责把用户数据拆分成不同的数据段在网络中传输并负责在接收方进行数据段的重组;对未收到的信息提供重传机制。TCP还为用户间的应用提供虚拟电路连接。 UDP是不提供确认机制的基于非连接的传输层协议。它是一种简单协议,交换数据报时没有软件对其进行正确性的检查,但它要求其它协议进行差错处理和报文重发的工作。 TCP数据段中不同的域代表了不同的意思: 源端口号——源站点运输层与高层协议间的服务接口,用来将高层联接向下复用,即发起呼叫的00端口。 目地端口号——目的站点运输层与高层协议间的服务接口。 序列号——保证数据正确的到达顺序的序列号。 确认号——指出期望收到对方的数据段的序号,因而隐含的告诉对方,比确认号少一个号的数据字节已经收妥。另外确认号和控制字段中的确认比特是配合使用的,确认比特置0时,确认号没有意义。 首部长度HLEN——指出了数据部分是从数据段的多少个32比特以后才开始。 保留字段——6个都置为0,供今后使用。 控制字段——含有控制功能信息。 窗口字段——发送方可以接受的窗口大小。 校验和——对头和数据进行校验和的计算。 紧急指针——表示一个紧急数据的结束。 可选项——指定最大TCP数据段的长度。 数据——上层协议数据。 TCP和UDP使用端口号(或称为套接字号)向上层应用传送数据,端口号可以同时跟踪共享同一次网络连接的多种会话。RFC1700规定了一些标准应用的端口号,非标准应用从规定的范围内随机的选取自己的端口号,源和目的端口号都记录在TCP数据段中。 TCP和UDP保留使用某些端口号,但某些应用可能不对其进行支持。 256以下的端口号被已经出版的一些常用的应用所使用 256到1023由各公司为其自主开发的应用使用 1023以上的端口号随机的分配给主机应用 端口号代表了不同的应用,上图中主机A要telnet到主机Z,源端口号为一个大于1023随机数,由于是要调用Z的telnet进程,而telnet的固定端口号为23,所以目的端口号为23。 在建立连接之前,两个TCP进程必须对各自的初始序列号(initial sequence numbers) 进行同步。通讯的双方给对方发送一个包含用于同步的控制字段和初始序列号的数据段,而且收到后还要给对方一个确认。具体步骤如下: 1. 主机A给B发送一个同步信号 : 我的序列号是X 。 2. 主机B给A发送一个确认 : 我知道了,你的序列号是X 。 3. 主机B给A 发送一个同步信号 : 我的序列号是Y 。 4.主机A给 B发送一个确认 : 我知道了,你的序列号是Y 。 其中第二步和第三步是利用一个数据段进行传送的,所以整个过程又称为三次握手协议。 对于TCP通讯,三次握手建立连接的机制是十分必要的,因为网络中的序列号与全球的时间无关,它是主机的TCP进程根据不同的机制选取的。所以如果接收方不记得上一次接收的数据段的序列号,它就不能辨别目前到达的数据段是否是已经接收过的。
文档评论(0)